[DzVents] Supervision d'un nas Synology avec SNMP

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par denis_brasseur »

results[6] n'est pas une variable, il s'agit de la valeur récupéré par

Code : Tout sélectionner

        local handle = assert(io.popen(command))
        for line in handle:lines() do
            results[i] =  format(line)
            i = i + 1
        end
La ligne ci dessous te retourne les différent éléments à récupérer,

Code : Tout sélectionner

local command = 'snmpget -v 2c -c '..CommunityPassword..' -O qv '..NasIp..' '..OID_NAS_TEMP..' '..OID_HDUnit..' '..OID_HDTotal..' '..OID_HDUsed..' '..OID_CpuUser..' '..OID_CpuSystem..' '
			..OID_MemAvailable ..' '.. OID_MemTotalSwap ..' '..OID_MemTotalReal..' '..OID_MemTotalFree..' '..OID_HDtemp1..' '..OID_HDtemp2..' '..OID_HDtemp3..' '..OID_HDtemp4..' '..OID_ifHCOutOctets..' '
			..OID_ifHCInOctets --..' '..OID_Physical_Memory_Units ..' '..OID_Physical_Memory_Used..' '..OID_Physical_Memory_Size ..' '..OID_system_memory_total ..' '..OID_system_memory_free ..' '.. OID_system_vsmemory_shared ..' '.. OID_system_vsmemory_buffer 
results[0] correspond à la valeur de OID_NAS_TEMP
results[6] correspond à la valeur de OID_MemAvailable, soit la valeur de OID Free Memory Available
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Madomo
Messages : 3
Inscription : 06 oct. 2019, 09:54

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par Madomo »

Pas faux. Merci.
Ca m'apprendra à faire de la lecture rapide :D
En revanche, mon DS715 ne semble pas accepter la commande snmpget.
Je suis obligé de faires plusieurs commandes snmpwalk pour que ça fonctionne.
Ca je gère, ce n'est pas le plus gênant, j'ai adapté le script.
Ce qui me pose problème, c'est qu'en respectant les formules pour le calcul de la ram et de l'espace disque dispo, les valeurs ne correspondent pas avec celles affichées par le syno.
Je creuse, je creuse...
leelock
Messages : 2
Inscription : 15 août 2019, 02:05

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par leelock »

Bonjour,
comment faire s il vous plait pour superviser un 2eme disque dur sur mon synology DS718+ non monte en raid la température apparait je vous remercie d'ailleurs pour les scripts mais par contre j aimerai avoir le stockage dispos et restant est ce possible?
je suis sur pi 3
d avance merci
leelock
Messages : 2
Inscription : 15 août 2019, 02:05

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par leelock »

Bonjour,
toujours personne pour monitorer un second HDD ?
cordialement
Tontonpat
Messages : 29
Inscription : 24 févr. 2019, 15:45

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par Tontonpat »

Bonjour,
Domoticz tourne sur mon NAS Synology.
J'ai du remplacer snmpget par snmpwalk pour que ça fonctionne partiellement.
Dans le log j'ai ça:

2021-02-05 18:58:00.324 Status: dzVents: Info: Synology Monitor v1.41 : ------ Start internal script: Script nas:, trigger: "every minute"
2021-02-05 18:58:00.326 Status: dzVents: Debug: Synology Monitor v1.41 : last ifHCOutOctets : 0 at 60 seconds ago
2021-02-05 18:58:00.326 Status: dzVents: Debug: Synology Monitor v1.41 : last ifHCInOctets : 0 at 60 seconds ago
2021-02-05 18:58:00.378 Status: dzVents: Debug: Synology Monitor v1.41 : NASTemp : 32
2021-02-05 18:58:00.393 Status: dzVents: Debug: Synology Monitor v1.41 : Processing device-adapter for Synology Temp: Temperature device adapter
2021-02-05 18:58:00.393 Status: dzVents: Debug: Synology Monitor v1.41 : Upload : 0ko/s, Download : 0ko/s
2021-02-05 18:58:00.393 Status: dzVents: Debug: Synology Monitor v1.41 : Requete SNMP incorrecte
2021-02-05 18:58:00.394 Status: dzVents: Debug: Synology Monitor v1.41 : Processing device-adapter for Synology: Switch device adapter
2021-02-05 18:58:00.394 Status: dzVents: Debug: Synology Monitor v1.41 : Constructed timed-command: Off
2021-02-05 18:58:00.398 Status: dzVents: Info: Synology Monitor v1.41 : ------ Finished Script nas

En pièce jointe, on voit que seule la température du NAS est remontée.

Si quelqu'un a une idée du problème, ce serait sympa.

Merci d'avance
Pièces jointes
Capture d’écran 2021-02-05 à 18.59.47.png
Capture d’écran 2021-02-05 à 18.59.47.png (89.56 Kio) Consulté 4635 fois
romain1206
Messages : 54
Inscription : 30 janv. 2019, 21:30

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par romain1206 »

snmpwalk c'est pour remonter plusieurs valeurs

il faut utiliser snmpget
Tontonpat
Messages : 29
Inscription : 24 févr. 2019, 15:45

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par Tontonpat »

C'est bien le but de remonter plusieurs valeur, non?
Si je mets snmpget, çà plante.
Quelqu'un arrive a surveiller son NAS depuis son NAS justement?
Je souhaiterai juste les températures des 2 disques durs, et du CPU.
Tontonpat
Messages : 29
Inscription : 24 févr. 2019, 15:45

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par Tontonpat »

Bonjour,
Je penses avoir trouvé mon problème.
En fait, results est toujours à 0. Il ne s'incremente pas avec tous les relevés qui sont fait.

Code : Tout sélectionner

local command = 'snmpwalk -v 2c -c '..CommunityPassword..' -O qv '..NasIp..' '..OID_NAS_TEMP..' '..OID_HDUnit..' '..OID_HDTotal..' '..OID_HDUsed..' '..OID_CpuUser..' '..OID_CpuSystem..' '
			..OID_MemAvailable ..' '.. OID_MemTotalSwap ..' '..OID_MemTotalReal..' '..OID_MemTotalFree..' '..OID_HDtemp1..' '..OID_HDtemp2..' '..OID_HDtemp3..' '..OID_HDtemp4..' '
			..OID_ifHCOutOctets..' '..OID_ifHCInOctets --..' '..OID_Physical_Memory_Units ..' '..OID_Physical_Memory_Used..' '..OID_Physical_Memory_Size ..' '..OID_system_memory_total ..' '..OID_system_memory_free ..' '.. OID_system_vsmemory_shared ..' '.. OID_system_vsmemory_buffer 
        local handle = assert(io.popen(command))
        for line in handle:lines() do
            results[i] =  format(line)
            i = i + 1
        end
        handle:close()
        if results[0] then
            dz.log('NASTemp : '..results[0],dz.LOG_DEBUG)
            if NAS_TEMP then dz.devices(NAS_TEMP).update(0,results[0]) end
            end
        if results[1] then dz.log('HDUnit : '..results[1],dz.LOG_DEBUG) end
        if results[2] then dz.log('HDTotal : '..results[2],dz.LOG_DEBUG) end
        if results[3] then dz.log('HDUsed : '..results[3],dz.LOG_DEBUG) end
        if results[4] then dz.log('CpuUser : '..results[4],dz.LOG_DEBUG) end
        if results[5] then dz.log('CpuSystem : '..results[5],dz.LOG_DEBUG) end
Si je modifie le script, pour ne relever qu'une valeur, et que je modifie le if qui suit, ça fonctionne

Code : Tout sélectionner

if results[0] then
            dz.log('NASTemp : '..results[0],dz.LOG_DEBUG)
            if NAS_TEMP then dz.devices(NAS_TEMP).update(0,results[0]) end
            end
Donc, si je fais plusieurs scripts "individuels", ça marche.

Quelqu'un peut m'aider?
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par denis_brasseur »

Chez moi, fonctionne avec snmpget
Commence par afficher la requete dans le code par

Code : Tout sélectionner

print(command)
Tu saisie ensuite la requete dans le terminal en ligne de commande après l'avoir récupérer dans les logs.
Tu devrais avoir les différents valeurs qui s'affichent, ou bien un message d'erreur.
Donnes nous le résultat de la manip.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Tontonpat
Messages : 29
Inscription : 24 févr. 2019, 15:45

Re: DZVents : Supervision d'un nas Synology avec SNMP

Message par Tontonpat »

Bonjour, et merci pour ta réponse.
Voici le résultat de la commande dans le terminal de mon mac :

Code : Tout sélectionner

snmpget -v 2c -c password -O qv adresseIP 1.3.6.1.4.1.6574.1.2.0 1.3.6.1.2.1.25.2.3.1.4.51 1.3.6.1.2.1.25.2.3.1.5.51 1.3.6.1.2.1.25.2.3.1.6.51 1.3.6.1.4.1.2021.11.9.0 1.3.6.1.4.1.2021.11.10.0 1.3.6.1.4.1.2021.4.13.0 1.3.6.1.4.1.2021.4.3.0 1.3.6.1.4.1.2021.4.5.0 1.3.6.1.4.1.2021.4.11.0 1.3.6.1.4.1.6574.2.1.1.6.0 1.3.6.1.4.1.6574.2.1.1.6.1 1.3.6.1.4.1.6574.2.1.1.6.2 1.3.6.1.4.1.6574.2.1.1.6.3 1.3.6.1.2.1.2.2.1.16.3 1.3.6.1.2.1.2.2.1.10.3
28
4096 Bytes
936523531
354565005
0
0
16916 kB
4474804 kB
3962660 kB
4334828 kB
23
24
No Such Instance currently exists at this OID
No Such Instance currently exists at this OID
1580342293
1893303848
Si je fais la même chose avec snmpwalk au lieu de snmpget, je n'ai que le 28 de la première ligne.
Cela voudrait dire que snmpget n'arrive pas à afficher la ligne suivante, alors que snmpwalk affiche bien tout, mais la suite du script ne voit pas le reste

Je précise que domoticz est installé sur mon NAS

edit:
voici le log de domoticz avec print(command) sur un snmpget d'une seule valeur:
Ici rien ne remonte avec snmpget

Code : Tout sélectionner

2021-02-09 08:21:00.534 Status: dzVents: Info: Synology Monitor v1.41 : ------ Start internal script: Z NAS CPU:, trigger: "every minute"
2021-02-09 08:21:00.535 Status: dzVents: Debug: Synology Monitor v1.41 : last ifHCOutOctets : 0 at 60 seconds ago
2021-02-09 08:21:00.535 Status: dzVents: Debug: Synology Monitor v1.41 : last ifHCInOctets : 0 at 60 seconds ago
2021-02-09 08:21:00.535 Status: dzVents: snmpget -v 2c -c password -O qv adresseip 1.3.6.1.4.1.2021.11.9.0
2021-02-09 08:21:00.540 Status: dzVents: Debug: Synology Monitor v1.41 : Upload : 0ko/s, Download : 0ko/s
2021-02-09 08:21:00.541 Status: dzVents: Debug: Synology Monitor v1.41 : Requete SNMP incorrecte
2021-02-09 08:21:00.551 Status: dzVents: Debug: Synology Monitor v1.41 : Processing device-adapter for Synology: Switch device adapter
2021-02-09 08:21:00.552 Status: dzVents: Debug: Synology Monitor v1.41 : Constructed timed-command: Off
2021-02-09 08:21:00.552 Status: dzVents: Info: Synology Monitor v1.41 : ------ Finished Z NAS CPU

la même chose avec snmpwalk :

Code : Tout sélectionner

2021-02-09 08:28:00.095 Status: dzVents: Info: Synology Monitor v1.41 : ------ Start internal script: Z NAS CPU:, trigger: "every minute"
2021-02-09 08:28:00.097 Status: dzVents: Debug: Synology Monitor v1.41 : last ifHCOutOctets : 0 at 60 seconds ago
2021-02-09 08:28:00.097 Status: dzVents: Debug: Synology Monitor v1.41 : last ifHCInOctets : 0 at 60 seconds ago
2021-02-09 08:28:00.097 Status: dzVents: snmpwalk -v 2c -c password -O qv adresseip 1.3.6.1.4.1.2021.11.9.0
2021-02-09 08:28:00.130 Status: dzVents: Debug: Synology Monitor v1.41 : NAS_CPU : 0
2021-02-09 08:28:00.140 Status: dzVents: Debug: Synology Monitor v1.41 : Processing device-adapter for Synology Utilisation CPU: Percentage device adapter
2021-02-09 08:28:00.141 Status: dzVents: Debug: Synology Monitor v1.41 : Upload : 0ko/s, Download : 0ko/s
2021-02-09 08:28:00.141 Status: dzVents: Debug: Synology Monitor v1.41 : Requete SNMP incorrecte
2021-02-09 08:28:00.141 Status: dzVents: Debug: Synology Monitor v1.41 : Processing device-adapter for Synology: Switch device adapter
2021-02-09 08:28:00.141 Status: dzVents: Debug: Synology Monitor v1.41 : Constructed timed-command: Off
2021-02-09 08:28:00.142 Status: dzVents: Info: Synology Monitor v1.41 : ------ Finished Z NAS CPU
Répondre