Bonjour,
@.Shad. à propos de l'UPS.
pour arriver à mes fins, j'ai installé snmpd sur une VM Ubuntu Mini qui me sert de tests. Puis pour récupérer l'ensemble des OIDs relatifs à l'UPS, j'ai lancé un snmpwalk sur l'OID racine de l'ups dans les MIBs syno, à savoir .1.3.6.1.4.1.6574.4 . Cela me donne l'ensemble des OIDs qui sont implémentés et vont me répondre (je ne sais pas si cela dépendra du modèle d'ups et de NAS Syno ?). Grace aux fichiers descripteurs de la MIB, on récupère facilement le descriptif (rajouté ici en fin de ligne)
root@ubuntumini:/etc/snmp# snmpwalk -v2c 192.168.1.171 -c public .1.3.6.1.4.1.6574.4
iso.3.6.1.4.1.6574.4.1.1.0 = STRING: "Ellipse ECO 800" upsDeviceModel
iso.3.6.1.4.1.6574.4.1.2.0 = STRING: "EATON" upsDeviceManufacturer
iso.3.6.1.4.1.6574.4.1.3.0 = STRING: "000000000" upsDeviceSerial
iso.3.6.1.4.1.6574.4.1.4.0 = STRING: "ups" upsDeviceType ups, pdu, scd, psu
iso.3.6.1.4.1.6574.4.2.1.0 = STRING: "OL CHRG" upsInfoStatus
iso.3.6.1.4.1.6574.4.2.5.0 = STRING: "Ellipse ECO 800" upsInfoModel
iso.3.6.1.4.1.6574.4.2.6.1.0 = STRING: "EATON" upsInfoMfr
iso.3.6.1.4.1.6574.4.2.7.0 = STRING: "000000000" ups info serial
iso.3.6.1.4.1.6574.4.2.8.0 = STRING: "0463" ups info vendor id
iso.3.6.1.4.1.6574.4.2.9.0 = STRING: "ffff" ups info product id
iso.3.6.1.4.1.6574.4.2.10.1.0 = STRING: "02" ups info firmware name
iso.3.6.1.4.1.6574.4.2.12.1.0 = Opaque: Float: 0.000000 upsInfoLoadValue
iso.3.6.1.4.1.6574.4.2.14.1.0 = INTEGER: 30 upsInfoDelayStart
iso.3.6.1.4.1.6574.4.2.14.3.0 = INTEGER: 20 upsInfoDelayShutdown
iso.3.6.1.4.1.6574.4.2.15.1.0 = INTEGER: 0 upsInfoTimerStart
iso.3.6.1.4.1.6574.4.2.15.3.0 = INTEGER: 0 upsInfoTimerShutdown
iso.3.6.1.4.1.6574.4.2.20.2.0 = Opaque: Float: 800.000000 upsInfoPowerNominal
iso.3.6.1.4.1.6574.4.2.22.0 = STRING: "enabled" ups info beeper status
iso.3.6.1.4.1.6574.4.3.1.1.0 = Opaque: Float: 100.000000 upsBatteryChargeValue
iso.3.6.1.4.1.6574.4.3.1.2.0 = Opaque: Float: 20.000000 upsBatteryChargeLow
iso.3.6.1.4.1.6574.4.3.6.1.0 = INTEGER: 2700 upsBatteryRuntimeValue
iso.3.6.1.4.1.6574.4.3.12.0 = STRING: "PbAc" ups battery type
iso.3.6.1.4.1.6574.4.4.2.2.0 = Opaque: Float: 184.000000 ups input transfer low
iso.3.6.1.4.1.6574.4.4.2.3.0 = Opaque: Float: 264.000000 ups input transfer high
iso.3.6.1.4.1.6574.4.5.1.1.0 = Opaque: Float: 230.000000 ups output voltage value
iso.3.6.1.4.1.6574.4.5.1.2.0 = Opaque: Float: 230.000000 ups output voltage nominal
iso.3.6.1.4.1.6574.4.5.2.2.0 = Opaque: Float: 50.000000 ups output frequency nominal
iso.3.6.1.4.1.6574.4.7.1.0 = STRING: "usbhid-ups" ups driver name
iso.3.6.1.4.1.6574.4.7.2.0 = STRING: "DSM6-2-2-24922-broadwell-fmp-repack-24922-190507" ups driver version
iso.3.6.1.4.1.6574.4.7.3.0 = STRING: "MGE HID 1.33" ups driver version data
iso.3.6.1.4.1.6574.4.7.4.0 = STRING: "0.38" ups driver version internal
iso.3.6.1.4.1.6574.4.7.5.0 = INTEGER: 5 ups driver poll interval
iso.3.6.1.4.1.6574.4.7.6.0 = STRING: "auto" ups driver port
iso.3.6.1.4.1.6574.4.7.7.0 = INTEGER: 30 ups driver poll frequency
root@ubuntumini:/etc/snmp#
Ensuite, il suffit dans le fichier telegraf.conf qui se charge du Syno, de renseigner les OIDs qui nous intéressent pour que telegraf aille les récupérer, ce qui nous donne par exemple pour les 2 premiers :
# UPS Model
[[inputs.snmp.field]]
name = "upsModel"
oid = ".1.3.6.1.4.1.6574.4.1.1.0"
# UPS Device Manufacturer
[[inputs.snmp.field]]
name = "upsManufacturer"
oid = ".1.3.6.1.4.1.6574.4.1.2.0"
Ne reste plus ensuite qu'à les grapher sur Grafana. Par exemple :
Reste à vérifier les changements d'états et de compteurs sur coupure d'alimentation principale.
Suivant les modèles d'ups, il y aura peut-être quelques différences de champs présents / absent. A ajuster donc.
Bruno78