Hi list, I have a series of Cisco switches with sensors on each port measuring Tx/Rx power, temperatures etc. I'm not sure however how to configure the SNMP plugin to poll this.
My primary index for looking up data is the ifIndex, and secondarily the interface name. IF-MIB::ifIndex.148 = INTEGER: 148 IF-MIB::ifDescr.148 = STRING: TenGigabitEthernet6/3 There is a mapping to the physical port in the entity-mib: ENTITY-MIB::entAliasMappingIdentifier.6007.0 = OID: IF-MIB::ifIndex.148 ENTITY-MIB::entPhysicalDescr.6007 = STRING: SFP-10Gbase-LR ENTITY-MIB::entPhysicalVendorType.6007 = OID: CISCO-ENTITY-VENDORTYPE-OID-MIB::cevSFP10GLR ENTITY-MIB::entPhysicalContainedIn.6007 = INTEGER: 6003 ENTITY-MIB::entPhysicalClass.6007 = INTEGER: port(10) ENTITY-MIB::entPhysicalParentRelPos.6007 = INTEGER: 1 ENTITY-MIB::entPhysicalName.6007 = STRING: TenGigabitEthernet6/3 ENTITY-MIB::entPhysicalHardwareRev.6007 = STRING: V02 ENTITY-MIB::entPhysicalFirmwareRev.6007 = STRING: ENTITY-MIB::entPhysicalSoftwareRev.6007 = STRING: ENTITY-MIB::entPhysicalSerialNum.6007 = STRING: XG96LR083 ENTITY-MIB::entPhysicalMfgName.6007 = STRING: OEM ENTITY-MIB::entPhysicalModelName.6007 = STRING: SFP-10G-LR ENTITY-MIB::entPhysicalAlias.6007 = STRING: ENTITY-MIB::entPhysicalAssetID.6007 = STRING: ENTITY-MIB::entPhysicalIsFRU.6007 = INTEGER: true(1) ENTITY-MIB::entPhysicalChildIndex.6007.6023 = INTEGER: 6023 ENTITY-MIB::entPhysicalChildIndex.6007.6027 = INTEGER: 6027 ENTITY-MIB::entPhysicalChildIndex.6007.6031 = INTEGER: 6031 ENTITY-MIB::entPhysicalChildIndex.6007.6035 = INTEGER: 6035 ENTITY-MIB::entPhysicalChildIndex.6007.6039 = INTEGER: 6039 The last rows here reference all the sensors connected to this physical port. For each sensor there is some info about the sensor itself, most importantly the name of it: ENTITY-MIB::entPhysicalDescr.6035 = STRING: TenGigabitEthernet6/3 Transmit Power Sensor ENTITY-MIB::entPhysicalVendorType.6035 = OID: CISCO-ENTITY-VENDORTYPE-OID-MIB::cevSensorTransceiverTxPwr ENTITY-MIB::entPhysicalContainedIn.6035 = INTEGER: 6007 ENTITY-MIB::entPhysicalClass.6035 = INTEGER: sensor(8) ENTITY-MIB::entPhysicalParentRelPos.6035 = INTEGER: 4 ENTITY-MIB::entPhysicalName.6035 = STRING: Te6/3 Transmit Power Sensor ENTITY-MIB::entPhysicalHardwareRev.6035 = STRING: ENTITY-MIB::entPhysicalFirmwareRev.6035 = STRING: ENTITY-MIB::entPhysicalSoftwareRev.6035 = STRING: ENTITY-MIB::entPhysicalSerialNum.6035 = STRING: ENTITY-MIB::entPhysicalMfgName.6035 = STRING: ENTITY-MIB::entPhysicalModelName.6035 = STRING: ENTITY-MIB::entPhysicalAlias.6035 = STRING: ENTITY-MIB::entPhysicalAssetID.6035 = STRING: ENTITY-MIB::entPhysicalIsFRU.6035 = INTEGER: false(2) And lastly there is the sensor data itself: CISCO-ENTITY-SENSOR-MIB::entSensorType.6035 = INTEGER: dBm(14) CISCO-ENTITY-SENSOR-MIB::entSensorScale.6035 = INTEGER: units(9) CISCO-ENTITY-SENSOR-MIB::entSensorPrecision.6035 = INTEGER: 1 CISCO-ENTITY-SENSOR-MIB::entSensorValue.6035 = INTEGER: -23 CISCO-ENTITY-SENSOR-MIB::entSensorStatus.6035 = INTEGER: ok(1) CISCO-ENTITY-SENSOR-MIB::entSensorValueTimeStamp.6035 = Timeticks: (571817747) 66 days, 4:22:57.47 CISCO-ENTITY-SENSOR-MIB::entSensorValueUpdateRate.6035 = INTEGER: 600 seconds CISCO-ENTITY-SENSOR-MIB::entSensorThresholdSeverity.6035.1 = INTEGER: major(20) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdSeverity.6035.2 = INTEGER: minor(10) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdSeverity.6035.3 = INTEGER: minor(10) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdSeverity.6035.4 = INTEGER: major(20) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdRelation.6035.1 = INTEGER: greaterOrEqual(4) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdRelation.6035.2 = INTEGER: greaterOrEqual(4) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdRelation.6035.3 = INTEGER: lessOrEqual(2) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdRelation.6035.4 = INTEGER: lessOrEqual(2) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdValue.6035.1 = INTEGER: 34 CISCO-ENTITY-SENSOR-MIB::entSensorThresholdValue.6035.2 = INTEGER: 4 CISCO-ENTITY-SENSOR-MIB::entSensorThresholdValue.6035.3 = INTEGER: -82 CISCO-ENTITY-SENSOR-MIB::entSensorThresholdValue.6035.4 = INTEGER: -122 CISCO-ENTITY-SENSOR-MIB::entSensorThresholdEvaluation.6035.1 = INTEGER: false(2) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdEvaluation.6035.2 = INTEGER: false(2) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdEvaluation.6035.3 = INTEGER: false(2) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdEvaluation.6035.4 = INTEGER: false(2) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdNotificationEnable.6035.1 = INTEGER: true(1) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdNotificationEnable.6035.2 = INTEGER: true(1) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdNotificationEnable.6035.3 = INTEGER: true(1) CISCO-ENTITY-SENSOR-MIB::entSensorThresholdNotificationEnable.6035.4 = INTEGER: true(1) How would I construct Table/Instance/Values for all this to come together in a useful way? I have about 2.500 of these ports, so any manual setup is impossible. I need it to be discovered and named automatically... Brgds, Stian Ovrevage _______________________________________________ collectd mailing list [email protected] http://mailman.verplant.org/listinfo/collectd
