def createCssDiscoverer(snmpClient, Framework, OSHVResult, hostOsh): for cssOidBase in CSS_OID_BASES: snmpAgent = SnmpAgent(cssOidBase, snmpClient, Framework) queryProducer = SnmpQueryBuilder(TEST_OID_OFFSET) queryProducer.addQueryElement(2, 'test') testResults = snmpAgent.getSnmpData(queryProducer) if len(testResults): return CssDiscoverer(snmpAgent, OSHVResult, Framework, hostOsh) raise NoCssException
def discoverF5(self, f5Osh): queryBuilder = SnmpQueryBuilder('1.4') queryBuilder.addQueryElement(1, 'name') queryBuilder.addQueryElement(2, 'version') queryBuilder.addQueryElement(3, 'build') queryBuilder.addQueryElement(4, 'edition') queryBuilder.addQueryElement(5, 'date') snmpAgent = SnmpAgent('1.3.6.1.4.1.3375.2', self.snmpAgent.snmpClient, self.Framework) try: productInformation = snmpAgent.getSnmpData(queryBuilder)[0] f5Osh.setAttribute('application_version', productInformation.version) except: errorMsg = 'Failed to get general information' errobj = errorobject.createError(errorcodes.FAILED_GETTING_INFORMATION, ['snmp', 'general information'], errorMsg) logger.debugException(errorMsg) logger.reportWarningObject(errobj) self.discoverVirtualServers(f5Osh)