Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[hardware::server::cisco::ucs::snmp::plugin] uninitialized values #4995

Closed
gbin2265 opened this issue Apr 17, 2024 · 9 comments
Closed

[hardware::server::cisco::ucs::snmp::plugin] uninitialized values #4995

gbin2265 opened this issue Apr 17, 2024 · 9 comments
Labels
enhancement Enhance existing plugin

Comments

@gbin2265
Copy link

Hello,

Bug report

I have multiple variables that are not initialized in the output

How to reproduce

Here are the error messages that I'm getting

centreon_plugins.pl' '--filter-uom' '(none)' '--hostname' 'x.x.x.x' '--plugin' 'hardware::server::cisco::ucs::snmp::plugin' '--snmp-autoreduce' '2' '--snmp-community' 'public' '--snmp-version' '2' '--mode' 'equipment' --debug --verbose

Use of uninitialized value in sprintf at /hardware/server/cisco/ucs/snmp/mode/components/blade.pm line 60.
Use of uninitialized value in sprintf at /hardware/server/cisco/ucs/snmp/mode/components/blade.pm line 60.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value $options{"value"} in pattern match (m//) at /centreon/plugins/templates/hardware.pm line 471.
Use of uninitialized value in sprintf at /hardware/server/cisco/ucs/snmp/mode/components/blade.pm line 70.

Please provide below the initial conditions to reproduce the bug

  • Blade info

Cisco UCSX-210C-M6 - Firmware Version 5.2(0.230040)

  • Environment:
Linux ctrlmon01.pol.be 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 4 14:55:32 EST 2024 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.9 (Maipo)

  • Version of the plugin: latest DEV version

regards,
Geert

@gbin2265
Copy link
Author

Hello,

We've been searching for over a year on how to read the temperature and power via SNMP from a CISCO UCSX-210C-M6 blade.
We couldn't find the right OID, so we create a case on CISCO.
It turned out that it wasn't possible until firmware version 5.1, and they recommended upgrading to firmware 5.2.
Now it's possible to query the temperature (front/rear) and power via SNMP on a CISCO UCSX-210C-M6 blade.

They also provided this link with additional information.
https://www.cisco.com/c/en/us/td/docs/unified_computing/Intersight/IMM_SNMP_Monitoring/b_imm_snmp_monitoring_guide/m_supported_mibs_imm.html

I noticed that the status of the blade (power on/off) doesn't use the same OID (OperPower/OperStatus) as the one used in your script.
That's why the table is empty and the script is throwing errors (I think).

Could you do something with the corresponding OID .1.3.6.1.4.1.9.9.719.1.9 (and below) to adjust your script to the latest OIDs?

And perhaps you could also provide the temperature (front/rear) and POWER as performance data!?

regards,
Geert

@gbin2265
Copy link
Author

gbin2265 commented Apr 21, 2024

snmpwalk for OID .1.3.6.1.4.1.9.9.719.1.9 (cucsComputeObjects)

CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeDn.1 = STRING: "sys/chassis-1/blade-1/blade"
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeRn.1 = STRING: blade
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeAvailability.1 = INTEGER: available(1)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeAvailableMemory.1 = Gauge32: 1048576
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeChassisId.1 = Gauge32: 1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeFltAggr.1 = Counter64: 0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeIntId.1 = STRING: 1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeModel.1 = STRING: UCSX-210C-M6
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeNumOfAdaptors.1 = Gauge32: 1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeNumOfCores.1 = Gauge32: 64
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeNumOfCpus.1 = Gauge32: 2
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeOperPower.1 = INTEGER: ok(10)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeOriginalUuid.1 = STRING: abfb8a02-UID-UID-UIS-e56192441f98
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeSerial.1 = STRING: SERIALSERIAL
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeServerId.1 = STRING: 1/1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeSlotId.1 = Gauge32: 1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeTotalMemory.1 = Gauge32: 1048576
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeUuid.1 = STRING: abfb8a02-UID-UID-UID-e56192441f98
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeVendor.1 = STRING: Cisco Systems Inc
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeNumOfCoresEnabled.1 = Gauge32: 64
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeMemorySpeed.1 = Gauge32: 3200
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeMfgTime.1 = STRING: 2022-4-7,0:0:0.0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladePartNumber.1 = STRING: 73-20511-01
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeVid.1 = STRING: V01
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeAssetTag.1 = STRING: N/A
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardDn.1 = STRING: "sys/chassis-1/blade-1/board"
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardRn.1 = STRING: board
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardCmosVoltage.1 = INTEGER: notSupported(100)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardId.1 = Gauge32: 1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardModel.1 = STRING: UCSX-210C-M6
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardOperPower.1 = INTEGER: ok(10)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardOperState.1 = INTEGER: notSupported(100)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardOperability.1 = INTEGER: notSupported(100)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardPerf.1 = INTEGER: notSupported(100)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardPower.1 = INTEGER: ok(10)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardPresence.1 = INTEGER: notSupported(100)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardRevision.1 = STRING: 0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardSerial.1 = STRING: SERIALSERIAL
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardThermal.1 = INTEGER: ok(1)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardVendor.1 = STRING: Cisco Systems Inc
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardVoltage.1 = INTEGER: ok(1)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardOperQualifierReason.1 = STRING: N/A
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardPowerUsage.1 = INTEGER: ok(1)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardFaultQualifier.1 = STRING: N/A
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardLocationDn.1 = STRING: N/A
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardCpuTypeDescription.1 = STRING: N/A
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsDn.1 = STRING: "sys/chassis-1/blade-1/board/power-stats"
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsRn.1 = STRING: power-stats
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsConsumedPower.1 = INTEGER: 351
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsConsumedPowerAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsConsumedPowerMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsConsumedPowerMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputCurrent.1 = INTEGER: 0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputCurrentAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputCurrentMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputCurrentMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputVoltage.1 = INTEGER: 12
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputVoltageAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputVoltageMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsInputVoltageMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsIntervals.1 = Gauge32: 0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsSuspect.1 = INTEGER: false(2)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsThresholded.1 = BITS: 00 00 00 00 00 00 00 00
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsTimeCollected.1 = STRING: 2024-4-21,12:11:33.0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbPowerStatsUpdate.1 = Gauge32: 163
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsDn.1 = STRING: "sys/chassis-1/blade-1/board/temp-stats"
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsRn.1 = STRING: temp-stats
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenIo.1 = INTEGER: 15
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenIoAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenIoMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenIoMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRear.1 = INTEGER: 44
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearL.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearLAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearLMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearLMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearR.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearRAvg.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearRMax.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsFmTempSenRearRMin.1 = INTEGER: -1
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsIntervals.1 = Gauge32: 0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsSuspect.1 = INTEGER: false(2)
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsThresholded.1 = BITS: 00 00 00 00 00 00 00 00
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsTimeCollected.1 = STRING: 2024-4-21,12:11:33.0
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeMbTempStatsUpdate.1 = Gauge32: 231

@lucie-dubrunfaut
Copy link
Contributor

Hello :)

If I understand correctly, the plugin no longer works on blade components beyond version 5.1? And you would also have the temperature to be added for versions > 5.1? Anyway, to be able to adapt the plugin to this new equipment (>5.1) we would need the MIBs (specifically those associated with your equipment) and also if you can you provide us an SNMPWalk with OIDs number rather than label ? Like this :
.1.3.6.1.4.1.9.9.719.1.9.2.1.42 = INTEGER: 10

@gbin2265
Copy link
Author

gbin2265 commented Jul 19, 2024

Hello,

see here the snmpwalk but with numbers :

snmpwalk x.x.x.x 1.3.6.1.4.1.9.9.719.1.9.2
snmpwalk x.x.x.x cucsCompute -On

.1.3.6.1.4.1.9.9.719.1.9.2.1.2.1 = STRING: "sys/chassis-1/blade-1/blade"
.1.3.6.1.4.1.9.9.719.1.9.2.1.3.1 = STRING: blade
.1.3.6.1.4.1.9.9.719.1.9.2.1.8.1 = INTEGER: available(1)
.1.3.6.1.4.1.9.9.719.1.9.2.1.9.1 = Gauge32: 1048576
.1.3.6.1.4.1.9.9.719.1.9.2.1.10.1 = Gauge32: 1
.1.3.6.1.4.1.9.9.719.1.9.2.1.16.1 = Counter64: 0
.1.3.6.1.4.1.9.9.719.1.9.2.1.28.1 = STRING: 1
.1.3.6.1.4.1.9.9.719.1.9.2.1.32.1 = STRING: UCSX-210C-M6
.1.3.6.1.4.1.9.9.719.1.9.2.1.34.1 = Gauge32: 1
.1.3.6.1.4.1.9.9.719.1.9.2.1.35.1 = Gauge32: 64
.1.3.6.1.4.1.9.9.719.1.9.2.1.36.1 = Gauge32: 2
.1.3.6.1.4.1.9.9.719.1.9.2.1.40.1 = INTEGER: ok(10)
.1.3.6.1.4.1.9.9.719.1.9.2.1.44.1 = STRING: 90a29f86-79bd-45cb-8834-fa01837fc765
.1.3.6.1.4.1.9.9.719.1.9.2.1.47.1 = STRING: FCH26137Q1H
.1.3.6.1.4.1.9.9.719.1.9.2.1.48.1 = STRING: 1/1
.1.3.6.1.4.1.9.9.719.1.9.2.1.49.1 = Gauge32: 1
.1.3.6.1.4.1.9.9.719.1.9.2.1.50.1 = Gauge32: 1048576
.1.3.6.1.4.1.9.9.719.1.9.2.1.52.1 = STRING: 90a29f86-79bd-45cb-8834-fa01837fc765
.1.3.6.1.4.1.9.9.719.1.9.2.1.53.1 = STRING: Cisco Systems Inc
.1.3.6.1.4.1.9.9.719.1.9.2.1.54.1 = Gauge32: 64
.1.3.6.1.4.1.9.9.719.1.9.2.1.56.1 = Gauge32: 3200
.1.3.6.1.4.1.9.9.719.1.9.2.1.57.1 = STRING: 2022-4-6,0:0:0.0
.1.3.6.1.4.1.9.9.719.1.9.2.1.58.1 = STRING: 73-20511-01
.1.3.6.1.4.1.9.9.719.1.9.2.1.59.1 = STRING: V01
.1.3.6.1.4.1.9.9.719.1.9.2.1.70.1 = STRING: N/A
.1.3.6.1.4.1.9.9.719.1.9.6.1.2.1 = STRING: "sys/chassis-1/blade-1/board"
.1.3.6.1.4.1.9.9.719.1.9.6.1.3.1 = STRING: board
.1.3.6.1.4.1.9.9.719.1.9.6.1.4.1 = INTEGER: notSupported(100)
.1.3.6.1.4.1.9.9.719.1.9.6.1.5.1 = Gauge32: 1
.1.3.6.1.4.1.9.9.719.1.9.6.1.6.1 = STRING: UCSX-210C-M6
.1.3.6.1.4.1.9.9.719.1.9.6.1.7.1 = INTEGER: ok(10)
.1.3.6.1.4.1.9.9.719.1.9.6.1.8.1 = INTEGER: notSupported(100)
.1.3.6.1.4.1.9.9.719.1.9.6.1.9.1 = INTEGER: notSupported(100)
.1.3.6.1.4.1.9.9.719.1.9.6.1.10.1 = INTEGER: notSupported(100)
.1.3.6.1.4.1.9.9.719.1.9.6.1.11.1 = INTEGER: ok(10)
.1.3.6.1.4.1.9.9.719.1.9.6.1.12.1 = INTEGER: notSupported(100)
.1.3.6.1.4.1.9.9.719.1.9.6.1.13.1 = STRING: 0
.1.3.6.1.4.1.9.9.719.1.9.6.1.14.1 = STRING: FCH26137Q1H
.1.3.6.1.4.1.9.9.719.1.9.6.1.15.1 = INTEGER: ok(1)
.1.3.6.1.4.1.9.9.719.1.9.6.1.16.1 = STRING: Cisco Systems Inc
.1.3.6.1.4.1.9.9.719.1.9.6.1.17.1 = INTEGER: ok(1)
.1.3.6.1.4.1.9.9.719.1.9.6.1.18.1 = STRING: N/A
.1.3.6.1.4.1.9.9.719.1.9.6.1.19.1 = INTEGER: ok(1)
.1.3.6.1.4.1.9.9.719.1.9.6.1.20.1 = STRING: N/A
.1.3.6.1.4.1.9.9.719.1.9.6.1.21.1 = STRING: N/A
.1.3.6.1.4.1.9.9.719.1.9.6.1.23.1 = STRING: N/A
.1.3.6.1.4.1.9.9.719.1.9.14.1.2.1 = STRING: "sys/chassis-1/blade-1/board/power-stats"
.1.3.6.1.4.1.9.9.719.1.9.14.1.3.1 = STRING: power-stats
.1.3.6.1.4.1.9.9.719.1.9.14.1.4.1 = INTEGER: 444
.1.3.6.1.4.1.9.9.719.1.9.14.1.5.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.6.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.7.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.8.1 = INTEGER: 0
.1.3.6.1.4.1.9.9.719.1.9.14.1.9.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.10.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.11.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.12.1 = INTEGER: 12
.1.3.6.1.4.1.9.9.719.1.9.14.1.13.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.14.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.15.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.14.1.16.1 = Gauge32: 0
.1.3.6.1.4.1.9.9.719.1.9.14.1.17.1 = INTEGER: false(2)
.1.3.6.1.4.1.9.9.719.1.9.14.1.18.1 = BITS: 00 00 00 00 00 00 00 00
.1.3.6.1.4.1.9.9.719.1.9.14.1.19.1 = STRING: 2024-7-19,14:46:2.0
.1.3.6.1.4.1.9.9.719.1.9.14.1.20.1 = Gauge32: 4007
.1.3.6.1.4.1.9.9.719.1.9.16.1.2.1 = STRING: "sys/chassis-1/blade-1/board/temp-stats"
.1.3.6.1.4.1.9.9.719.1.9.16.1.3.1 = STRING: temp-stats
.1.3.6.1.4.1.9.9.719.1.9.16.1.4.1 = INTEGER: 15
.1.3.6.1.4.1.9.9.719.1.9.16.1.5.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.6.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.7.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.8.1 = INTEGER: 47
.1.3.6.1.4.1.9.9.719.1.9.16.1.9.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.10.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.11.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.12.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.13.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.14.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.15.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.16.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.17.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.18.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.19.1 = INTEGER: -1
.1.3.6.1.4.1.9.9.719.1.9.16.1.20.1 = Gauge32: 0
.1.3.6.1.4.1.9.9.719.1.9.16.1.21.1 = INTEGER: false(2)
.1.3.6.1.4.1.9.9.719.1.9.16.1.22.1 = BITS: 00 00 00 00 00 00 00 00
.1.3.6.1.4.1.9.9.719.1.9.16.1.23.1 = STRING: 2024-7-19,14:46:2.0
.1.3.6.1.4.1.9.9.719.1.9.16.1.24.1 = Gauge32: 8921

@gbin2265
Copy link
Author

blade oper -> ".1.3.6.1.4.1.9.9.719.1.9.2.1.40.1"
board oper -> ".1.3.6.1.4.1.9.9.719.1.9.6.1.7.1"
Stat Power -> ".1.3.6.1.4.1.9.9.719.1.9.14.1.4.1"
Stat Temp Front -> ".1.3.6.1.4.1.9.9.719.1.9.16.1.4.1"
Stat Temp Rear -> ".1.3.6.1.4.1.9.9.719.1.9.16.1.8.1"

@gbin2265
Copy link
Author

For blades on USCX, it is only possible to perform monitoring via SNMP for Status/Temp/Power from version 5.2 onwards.

The OIDs you are currently using are think for UCS-C but not for the USC-X (firmware 5.2)

@lucie-dubrunfaut
Copy link
Contributor

Hello :)

Thank you very much for all these very clear details :)
To facilitate the versatility of the plugin, do you have an idea of ​​a specific OID (or other way by querying the equipment) which would allow us to retrieve the firmware version (to check if it is >=5.2) as well as to decide between a USC-X and a USC-C equipment?

@gbin2265
Copy link
Author

gbin2265 commented Jul 20, 2024

Hello,

I have reviewed the emails with CISCO once more and found this as a link.
https://www.cisco.com/c/en/us/td/docs/unified_computing/Intersight/IMM_SNMP_Monitoring/b_imm_snmp_monitoring_guide/m_supported_mibs_imm.html

So if I see it correctly, the temp/power... is available from version 5.1.0 (in the emails they mentioned from version 5.2).

If I am correct, then it is basically a matter of checking if the OID cucsAdaptorUnitTable exists, and then you know that the temp/power/... option is available (Firmware 5.1.0 or higher).

I see this in the web page :

Following are the MIB tables supported by CIMC on blade servers with server firmware version 5.1(0) and later.
cucsAdaptorUnitTable
cucsComputeMbPowerStatsTable
cucsComputeMbTempStatsTable
cucsEquipmentGraphicsCardCapProviderTable
cucsMemoryUnitTable
cucsMemoryUnitEnvStatsTable

We only have UCSX equipment, so it is difficult to compare with other CISCO hardware.
Maybe this firmware also applies to other CISCO hardware to find out the temp/power/... via the snmp - CISCO KVM console.

When I look at this link, I get the impression that version 5.2 is not yet available for the UCS-C.
https://www.cisco.com/c/en/us/td/docs/unified_computing/Intersight/Server-Firmware/4_3/b_intersight_server_fw_rn_4_3.html

Regarding the UCSX, I think you can only see this in the description of the blade.

CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBladeModel.1 = STRING: UCSX-210C-M6
CISCO-UNIFIED-COMPUTING-COMPUTE-MIB::cucsComputeBoardModel.1 = STRING: UCSX-210C-M6

.1.3.6.1.4.1.9.9.719.1.9.2.1.32.1 = STRING: UCSX-210C-M6
.1.3.6.1.4.1.9.9.719.1.9.6.1.6.1 = STRING: UCSX-210C-M6

@lucie-dubrunfaut
Copy link
Contributor

Hello :)

Thank you for all these elements, I was able to complete the necessary fields to propose an enhancement of the plugin. Let me close this issue here because it is now an enhancement request and these are managed on TheWatch Ideas to be vote on (you can create a new idea and link this github issue in your proposition).
Thank you for your understanding 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhance existing plugin
Projects
None yet
Development

No branches or pull requests

2 participants