REQUEST_TYPE_NAME = Framework.getDestinationAttribute('request_type_name') RELATED_REQUEST_TYPE_NAME = Framework.getDestinationAttribute('related_request_type_name') RELATION_TYPE_NAME = Framework.getDestinationAttribute('relation_type_name') RELATION_PARENT_TYPE_NAME = Framework.getDestinationAttribute('relation_parent_type_name') ########################################### MAM Data ci_type = Framework.getDestinationAttribute('ci_type') sap_transaction_name = Framework.getDestinationAttribute('sap_transaction_name') ########################################### Object State Holder oracleOSH = ObjectStateHolder('oracle', 6, oracle_id, AppilogTypes.CMDB_OBJECT_ID) sap_transaction_id = Framework.getDestinationAttribute('id') sap_transactionOSH = ObjectStateHolder('sap_transaction', 6, sap_transaction_id, AppilogTypes.CMDB_OBJECT_ID) properties = Properties() properties.setProperty(Protocol.PROTOCOL_ATTRIBUTE_PORT, port) properties.setProperty(Protocol.SQL_PROTOCOL_ATTRIBUTE_DBSID, sid) dbRelation="select ci.cmdb_id, des.a_data_name, ci.a_program from cmdb.cdm_sap_transaction_1 ci,cmdb.cdm_data_1 des where ci.cmdb_id=des.cmdb_id and des.a_data_name='%s'"%(sap_transaction_name) mam_utils.debug('----- SQL: ' ,dbRelation) # 3 ############################## def parseDbRelation(dbRelationRes): if dbRelationRes: rows = dbRelationRes.getRowCount() cols = dbRelationRes.getColumnCount() for row in range(rows): cmdbID = dbRelationRes.getCell(row, 0) transactionName = dbRelationRes.getCell(row, 1) programName = dbRelationRes.getCell(row, 2) dbChildOSH = ObjectStateHolder('SAPCCM_ALM_Program',6) dbChildOSH.setAttribute(AttributeStateHolder('data_name', programName, 0,'String')) ##dbChildOSH.setContainer('root_container', oracleOSH) linkOSH = HostKeyUtil.getLink('IS_PROGRAM', dbChildOSH,sap_transactionOSH) OSHVSResult.add(linkOSH)
stacktrace = traceback.format_exception(sys.exc_info()[0], sys.exc_info()[1], sys.exc_info()[2]) if mam_utils.isDebugEnabled(): mam_utils.debug('Failed activating query: ', query, '\non destination: ', ip, '\nException:') mam_utils.debug(stacktrace) if mam_utils.isDebugEnabled(): if tableRes: rows = tableRes.getRowCount() cols = tableRes.getColumnCount() mam_utils.debug('Found ', rows, ' rows, ', cols, ' columns.') return tableRes try: ###################################################### ### start the discovery process with defining sqlAgent ###################################################### sqlAgent = Framework.getAgent(AgentConstants.ORACLE_AGENT, ip, credential_id, properties) except: stacktrace = traceback.format_exception(sys.exc_info()[0], sys.exc_info()[1], sys.exc_info()[2]) if mam_utils.isDebugEnabled(): mam_utils.debug('Unexpected Framework.getAgent() Exception:') mam_utils.debug(stacktrace) else: discoverOracle(sqlAgent, ip, oracleOSH)
def doQuery(sqlAgent, query, ip): ################################################# ### instance that starts the defined database request ################################################# tableRes = None try: tableRes = sqlAgent.doTableCommand( query ) except: stacktrace = traceback.format_exception(sys.exc_info()[0], sys.exc_info()[1], sys.exc_info()[2]) if mam_utils.isDebugEnabled(): mam_utils.debug('Failed activating query: ' , query , '\non destination: ' , ip , '\nException:') mam_utils.debug(stacktrace) if mam_utils.isDebugEnabled(): if tableRes: rows = tableRes.getRowCount() cols = tableRes.getColumnCount() mam_utils.debug('Found ', rows, ' rows, ', cols, ' columns.') return tableRes try: ###################################################### ### start the discovery process with defining sqlAgent ###################################################### sqlAgent = Framework.getAgent(AgentConstants.ORACLE_AGENT, ip , credential_id, properties) except: stacktrace = traceback.format_exception(sys.exc_info()[0], sys.exc_info()[1], sys.exc_info()[2]) if mam_utils.isDebugEnabled(): mam_utils.debug('Unexpected Framework.getAgent() Exception:') mam_utils.debug(stacktrace) else: discoverOracle(sqlAgent, ip, oracleOSH)
RELATION_PARENT_TYPE_NAME = Framework.getDestinationAttribute( 'relation_parent_type_name') ########################################### MAM Data ci_type = Framework.getDestinationAttribute('ci_type') sap_transaction_name = Framework.getDestinationAttribute( 'sap_transaction_name') mam_utils.info('----- Start Program') ########################################### Object State Holder oracleOSH = ObjectStateHolder('oracle', 6, oracle_id, AppilogTypes.CMDB_OBJECT_ID) sap_transaction_id = Framework.getDestinationAttribute('id') sap_transaction_program = Framework.getDestinationAttribute('program') sap_transactionOSH = ObjectStateHolder('sap_transaction', 6, sap_transaction_id, AppilogTypes.CMDB_OBJECT_ID) mam_utils.debug('----- Transaction OSH: ', sap_transactionOSH) mam_utils.debug('----- Transaction Name: ', sap_transaction_program) mam_utils.debug('----- Oracle OSH: ', oracleOSH) properties = Properties() properties.setProperty(Protocol.PROTOCOL_ATTRIBUTE_PORT, port) properties.setProperty(Protocol.SQL_PROTOCOL_ATTRIBUTE_DBSID, sid) dbRelation = "select ci.cmdb_id, des.a_data_name, ci.a_program from cmdb.cdm_sap_transaction_1 ci,cmdb.cdm_data_1 des where ci.cmdb_id=des.cmdb_id " mam_utils.debug('----- SQL: ', dbRelation) # 3 ############################## def parseDbRelation(dbRelationRes): if dbRelationRes: rows = dbRelationRes.getRowCount() cols = dbRelationRes.getColumnCount() if mam_utils.isDebugEnabled():
VIEW_NAME = Framework.getDestinationAttribute('view_name') TABLE_NAME = Framework.getDestinationAttribute('table_name') REQUEST_TYPE_NAME = Framework.getDestinationAttribute('request_type_name') RELATED_REQUEST_TYPE_NAME = Framework.getDestinationAttribute('related_request_type_name') RELATION_TYPE_NAME = Framework.getDestinationAttribute('relation_type_name') RELATION_PARENT_TYPE_NAME = Framework.getDestinationAttribute('relation_parent_type_name') ########################################### MAM Data ci_type = Framework.getDestinationAttribute('ci_type') sap_transaction_name = Framework.getDestinationAttribute('sap_transaction_name') mam_utils.info('----- Start Program') ########################################### Object State Holder oracleOSH = ObjectStateHolder('oracle', 6, oracle_id, AppilogTypes.CMDB_OBJECT_ID) sap_transaction_id = Framework.getDestinationAttribute('id') sap_transaction_program = Framework.getDestinationAttribute('program') sap_transactionOSH = ObjectStateHolder('sap_transaction', 6, sap_transaction_id, AppilogTypes.CMDB_OBJECT_ID) mam_utils.debug('----- Transaction OSH: ' ,sap_transactionOSH) mam_utils.debug('----- Transaction Name: ' ,sap_transaction_program) mam_utils.debug('----- Oracle OSH: ' ,oracleOSH) properties = Properties() properties.setProperty(Protocol.PROTOCOL_ATTRIBUTE_PORT, port) properties.setProperty(Protocol.SQL_PROTOCOL_ATTRIBUTE_DBSID, sid) dbRelation="select ci.cmdb_id, des.a_data_name, ci.a_program from cmdb.cdm_sap_transaction_1 ci,cmdb.cdm_data_1 des where ci.cmdb_id=des.cmdb_id " mam_utils.debug('----- SQL: ' ,dbRelation) # 3 ############################## def parseDbRelation(dbRelationRes): if dbRelationRes: rows = dbRelationRes.getRowCount() cols = dbRelationRes.getColumnCount() if mam_utils.isDebugEnabled(): mam_utils.debug('----- Number of Relations: ' , rows) for row in range(rows):