def process(self, device, results, log): """collect WBEM information from this device""" log.info('processing %s for device %s', self.name(), device.id) try: bb = results['Linux_BaseBoard'][0] if not bb: return cs = results['Linux_ComputerSystem'][0] if not cs: return os = results['Linux_OperatingSystem'][0] if not os: return maps = [] om = self.objectMap(cs) om.snmpLocation = '' om.snmpOid = '' if bb['_manuf'] not in EnterpriseOIDs.values(): bb['_manuf'] = 'Unknown' om.setHWProductKey = MultiArgs(bb['_model'], bb['_manuf']) osmanuf = os['version'].split()[0] if osmanuf not in EnterpriseOIDs.values(): osmanuf = 'Unknown' om.setOSProductKey = MultiArgs(os['version'], osmanuf) maps.append(om) maps.append(ObjectMap({ "serialNumber": bb['serialNumber'], "tag": bb['tag'], "totalMemory": (os['totalMemory'] * 1024)}, compname="hw")) maps.append(ObjectMap({"totalSwap": (os['totalSwap'] * 1024)}, compname="os")) except: log.warning('processing error') return return maps
def process(self, device, results, log): """collect WMI information from this device""" log.info('processing %s for device %s', self.name(), device.id) rm = self.relMap() perfnames = {} instances = results.get("Win32_PerfRawData_PerfDisk_PhysicalDisk", None) if instances: for instance in instances: perfnames[instance['name'].split()[0]] = instance['snmpindex'] instances = results.get("Win32_DiskDrive", None) if not instances: return for instance in instances: om = self.objectMap(instance) om.id = self.prepId('PHYSICALDRIVE%s'%om.id) try: if not om._mediatype or not om._mediatype.startswith('Fixed'): continue om.perfindex = perfnames.get(str(instance['id']), None) if not om.perfindex: continue if om._model and not om._manuf: om._manuf = om._model.split()[0] if om._manuf not in EnterpriseOIDs.values(): om._manuf='Unknown' if om._model: om.setProductKey = MultiArgs(om._model, om._manuf) except AttributeError: raise rm.append(om) return rm
def process(self, device, results, log): """collect WMI information from this device""" log.info('processing %s for device %s', self.name(), device.id) instances = results.get("Win32_Product", None) if not instances: return rm = self.relMap() for instance in instances: try: if instance['setInstallDate']: instance['setInstallDate'] = str(instance['setInstallDate']) elif instance['_setInstallDate']: instance['setInstallDate'] = '%s/%s/%s 00:00:00' % ( instance['_setInstallDate'][:4], instance['_setInstallDate'][4:6], instance['_setInstallDate'][6:8]) else: instance['setInstallDate'] = '1968/01/08 00:00:00' om = self.objectMap(instance) om.id = self.prepId(om.setProductKey) if om._vendor: om._vendor = om._vendor.split()[0] if om._vendor not in EnterpriseOIDs.values(): om._vendor = 'Unknown' om.setProductKey = MultiArgs(om.setProductKey, om._vendor) rm.append(om) except AttributeError: continue return rm
def process(self, device, results, log): """collect WBEM information from this device""" log.info('processing %s for device %s', self.name(), device.id) try: cs = results['Linux_BaseBoard'][0] if not cs: return os = results['Linux_OperatingSystem'][0] if not os: return om = self.objectMap() if cs['_manuf'] not in EnterpriseOIDs.values(): cs['_manuf'] = 'Unknown' om.setHWProductKey = MultiArgs(cs['_model'], cs['_manuf']) osmanuf = os['version'].split()[0] if osmanuf not in EnterpriseOIDs.values(): osmanuf = 'Unknown' om.setOSProductKey = MultiArgs(os['version'], osmanuf) except: return return om
def process(self, device, results, log): """collect WBEM information from this device""" log.info("processing %s for device %s", self.name(), device.id) try: cs = results["Linux_BaseBoard"][0] if not cs: return os = results["Linux_OperatingSystem"][0] if not os: return om = self.objectMap() if cs["_manuf"] not in EnterpriseOIDs.values(): cs["_manuf"] = "Unknown" om.setHWProductKey = MultiArgs(cs["_model"], cs["_manuf"]) osmanuf = os["version"].split()[0] if osmanuf not in EnterpriseOIDs.values(): osmanuf = "Unknown" om.setOSProductKey = MultiArgs(os["version"], osmanuf) except: return return om
def process(self, device, results, log): """collect WBEM information from this device""" log.info('processing %s for device %s', self.name(), device.id) try: bb = results['Linux_BaseBoard'][0] if not bb: return cs = results['Linux_ComputerSystem'][0] if not cs: return os = results['Linux_OperatingSystem'][0] if not os: return maps = [] om = self.objectMap(cs) om.snmpLocation = '' om.snmpOid = '' if bb['_manuf'] not in EnterpriseOIDs.values(): bb['_manuf'] = 'Unknown' om.setHWProductKey = MultiArgs(bb['_model'], bb['_manuf']) osmanuf = os['version'].split()[0] if osmanuf not in EnterpriseOIDs.values(): osmanuf = 'Unknown' om.setOSProductKey = MultiArgs(os['version'], osmanuf) maps.append(om) maps.append( ObjectMap( { "serialNumber": bb['serialNumber'], "tag": bb['tag'], "totalMemory": (os['totalMemory'] * 1024) }, compname="hw")) maps.append( ObjectMap({"totalSwap": (os['totalSwap'] * 1024)}, compname="os")) except: log.warning('processing error') return return maps
def process(self, device, results, log): """collect WBEM information from this device""" log.info('processing %s for device %s', self.name(), device.id) rm = self.relMap() instances = results["Linux_Processor"] if not instances: return for instance in instances: om = self.objectMap(instance) try: om.socket = om.id om.id = prepId(om.id) manuf = om._name.split()[0] if manuf not in EnterpriseOIDs.values(): manuf = 'Unknown' om.setProductKey = MultiArgs(om._name, manuf) except AttributeError: continue rm.append(om) return rm