From 1ba638a117d51fda9c3b23a1b24fe6dc096be18a Mon Sep 17 00:00:00 2001 From: anima Date: Sun, 9 Feb 2025 23:44:47 +0100 Subject: [PATCH] extend temperature check with disks --- checks/check_snmp_synology.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/checks/check_snmp_synology.py b/checks/check_snmp_synology.py index af89977..ad833e2 100755 --- a/checks/check_snmp_synology.py +++ b/checks/check_snmp_synology.py @@ -8,7 +8,7 @@ - https://easysnmp.readthedocs.io/en/latest/session_api.html """ -__version__ = '0.8.0' +__version__ = '0.9.0' __author__ = 'anima' # imports @@ -174,7 +174,7 @@ class SNMPSynologySystemResult(nagiosplugin.Result): # # Synology [DSM & DSM UC] Temperature of NAS # -class SNMPSynologyTemperatureResource(nagiosplugin.Resource): +class SNMPSynologyTemperatureResource(nagiosplugin.Resource, SNMPSynologyDisk): def __init__(self, session) -> None: self.session = session @@ -187,7 +187,10 @@ class SNMPSynologyTemperatureResource(nagiosplugin.Resource): baseoid = '.1.3.6.1.4.1.6574.1' oids = dict() result = self.session.get(baseoid + '.2.0').value - return nagiosplugin.Metric(name='temperature', value=int(result), uom='°C', context='temperature_scalar_context') + yield nagiosplugin.Metric(name='temp_system', value=int(result), uom='°C', context='temperature_scalar_context') + disks = self.get_disks() + for disk in disks: + yield nagiosplugin.Metric(name='temp_' + disk['id'].lower().replace(' ', '_'), value=int(disk['temp']), uom='°C', context='temperature_scalar_context') def __init__(self, session) -> None: self.session = session