FHEM - Hausautomations-Systeme > Unterstützende Dienste

überarbeitet SYSSTAT modul: non-blocking, remote kommandos, beliebige readings

<< < (3/33) > >>

mrbreil:
Ich wollte das neue SYSSTAT nur auch lokal nutzen und denke ich habe einen Bug gefunden

--- Code: ---Internals:
   DEF        60 600
   HAS_Net::SNMP 1
   INTERVAL   60
   INTERVAL_FS 600
   NAME       sysstat_Server
   NR         222
   NTFY_ORDER 50-sysstat_Server
   STATE      1.45. 1.16. 1.15
   SystemDescription Linux Server-9000 3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u6 x86_64
   SystemName Server-9000
   TYPE       SYSSTAT
   interval_fs 480
   CHANGETIME:
   Readings:
     2015-12-03 20:38:15   /               4
     2015-12-02 08:59:28   /media/daten    57
     2015-12-03 20:38:15   load            1.45.
     2015-12-03 20:38:15   state           1.45. 1.16. 1.15
     2015-12-03 20:38:15   uptime          8 days, 21:05
   filesystems:
     /media/daten
     /dev/disk/by-uuid/ebe2ea73-3aaf-4a8f-8f3a-7a0d00d2b5b9
   Helper:
     Filesystems:
       /dev/disk/by-uuid/ebe2ea73-3aaf-4a8f-8f3a-7a0d00d2b5b9:
         free       431971476
         mountpoint /
         total      473625808
         usageper   4
         used       17595452
       /dev/sdb1:
         free       575635468
         mountpoint /media/daten
         total      1442145340
         usageper   58
         used       793253068
       /dev/sdc1:
         free       594968116
         mountpoint /media/daten_backup
         total      1442146708
         usageper   57
         used       773921720
       Rootfs:
         free       431971476
         mountpoint /
         total      473625808
         usageper   4
         used       17595452
       Tmpfs:
         free       2214960
         mountpoint /run/shm
         total      2214960
         usageper   0
         used       0
       Udev:
         free       10240
         mountpoint /dev
         total      10240
         usageper   0
         used       0
Attributes:
   filesystems /media/daten,/dev/disk/by-uuid/ebe2ea73-3aaf-4a8f-8f3a-7a0d00d2b5b9
   room       IT
   showpercent 1
   stat       1
   uptime     1
--- Ende Code ---

in dem load reading ist doch ein Punkt zuviel, oder?


--- Code: ---2015-12-03 20:38:15   load            1.45.
--- Ende Code ---

Gruß Christian

justme1968:
ich habe die version im ersten post aktualisiert.

die änderungen sind:

- die snmp abfragen sind jetzt auch non-blocking

- auf manchen systemen konnten zu viele punkte in den load und state readings auftauchen. das ist behoben.

wenn es keine (negativen) rückmeldungen gibt checke ich diese Version demnächst ein.

gruss
  andre

mrbreil:
Mh! Irgendwie habe ich es nicht angezeigt bekommen das du geantwortet hast.
Habe es jetzt ausprobiert und es funktioniert.

Vielen Dank, schönes WE.

hoods:
Hallo zusammen,

erst einmal vielen Dank für das Modul!
Ich habe heute auf die hier verlinkte Modul Version aktualisiert und hatte bisher die offizielle version im Einsatz um mein Synology ds214play zu überwachen.

Leider bekomme ich im fhem Log die Meldung "snmp filesystems error", vermutlich wegen dem "@" Zeichen im Filesystem Namen (?)

--- Code: ---2015.12.26 22:44:06 2: ds214play: unanswered query in queue, reconnecting
2015.12.26 22:44:06 2: ds214play: starting: /usr/bin/ssh -q 192.168.178.30
2015.12.26 22:44:06 2: ds214play: unanswered query in queue, reconnecting
2015.12.26 22:44:06 2: ds214play: starting: /usr/bin/ssh -q 192.168.178.30
2015.12.26 22:44:11 2: ds214play: snmp filesystems error
--- Ende Code ---

Was muss ich tun damit das Filesystem richtig erkannt wird und die Fehlermeldung verschwindet?

Des weiteren verzweifle ich gerade an den MIBs. Die wollen einfach nicht in der Liste der Readings auftauchen ...

Hier meine Config:

--- Code: ---Internals:
   CONNECTS   12
   DEF        300 600 192.168.178.30
   FD         4
   HAS_Net::SNMP 1
   HOST       192.168.178.30
   INTERVAL   300
   INTERVAL_FS 600
   NAME       ds214play
   NR         471
   NTFY_ORDER 50-ds214play
   PARSED     5
   PARTIAL
   PID        19306
   SENT       6
   STARTED    1
   STATE      5.38 5.51 5.61
   SystemDescription Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686
   SystemName diskstation
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 300
   snmpCommunity public
   snmpVersion 1
   uname      Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686 GNU/Linux synology_evansport_214play
   QUEUE:
     HASH(0x3499060)
     HASH(0x2eb65b8)
   Readings:
     2015-12-26 22:44:09   /opt            74
     2015-12-26 22:44:09   /volumeUSB1/usbshare 93
     2015-12-26 22:49:12   connection      connected
     2015-12-26 22:49:16   load            5.38
     2015-12-26 22:49:16   state           5.38 5.51 5.61
     2015-12-26 22:49:16   temperature     35
   filesystems:
     /dev/sdq1
     /volume1/@optware
   Helper:
     has_proc_loadavg 1
     has_proc_stat 1
     has_proc_uptime 1
     Filesystems:
       /dev/sdq1:
         free       148961280
         mountpoint /volumeUSB1/usbshare
         total      1922828180
         usageper   93
         used       1773764500
       /dev/shm:
         free       358080
         mountpoint /dev/shm
         total      358080
         usageper   0
         used       0
       /run:
         free       355376
         mountpoint /run
         total      358080
         usageper   1
         used       2704
       /tmp:
         free       357856
         mountpoint /tmp
         total      358080
         usageper   1
         used       224
       /var:
         free       1304876
         mountpoint /usr/local/zarafa-licensed/var
         total      2451064
         usageper   45
         used       1043788
       /volume1/@optware:
         free       761216560
         mountpoint /opt
         total      2879527424
         usageper   74
         used       2118208464
Attributes:
   filesystems /dev/sdq1,/volume1/@optware
   mibs       .1.3.6.1.4.1.6574.4.2.12.1:upsInfoLoadValue0
.1.3.6.1.4.1.6574.1.2:temperature0

   room       Monitoring
   showpercent 1
   snmp       1
   snmpCommunity public
   snmpVersion 1
   stat       1
   synologytemperature 1
   uptime     1
--- Ende Code ---


Ist das Format für die MIBs korrekt? Also MIB:Reading <NL> MIB:Reading ? Oder muss hier noch ein Komma dazwischen?
Direkt auf der Synology als auch auf dem Pi2 (FHEM Server) liefert snmpwalk das gewünscht Ergebnis.


--- Code: ---root@raspberrypi2:/opt/fhem# snmpwalk -c public -v 1 192.168.178.30 .1.3.6.1.4.1.6574.4.2.12.1
iso.3.6.1.4.1.6574.4.2.12.1.0 = Opaque: Float: 7.000000
--- Ende Code ---

Gruss Sven

hoods:
Anbei ein paar learnings und Updates:

1. die beiden relevanten Filesysteme konnte ich bisher nicht erfolgreich einbinden wegen besagter Fehlermeldung.
Habt versucht mit:

--- Code: ---"/volume1/@optware"
'/volume1/@optware'
/volume1/\@optware
--- Ende Code ---

@andre: wie sollte ich den FS übergeben damit das Modul damit umgehen kann?

2a. Meine learnings zum Thema snmp und mibs
snmpwalk ist gut zur Identifizierung der gewünschten OIDs, mit snmpget ist zu prüfen ob die OID auch wirklich das gewünschte Resultat liefert. Der Teufel steckt im Detail, siehe Beispiel Output ...

--- Code: ---root@raspberrypi2:~# snmpwalk -c public -v 2c 192.168.178.30 iso.3.6.1.4.1.6574.1.2
iso.3.6.1.4.1.6574.1.2.0 = INTEGER: 35
root@raspberrypi2:~# snmpget -c public -v 2c 192.168.178.30 iso.3.6.1.4.1.6574.1.2
iso.3.6.1.4.1.6574.1.2 = No Such Instance currently exists at this OID                   
root@raspberrypi2:~# snmpget -c public -v 2c 192.168.178.30 iso.3.6.1.4.1.6574.1.2.0        <= die vollständige OID enthält .0 am Ende
iso.3.6.1.4.1.6574.1.2.0 = INTEGER: 35
--- Ende Code ---

Am besten die Hersteller Doku konsultieren und die passenden OIDs raussuchen und prüfen. Für Synology gibts die hier:
http://global.download.synology.com/download/Document/MIBGuide/Synology_DiskStation_MIB_Guide.pdf

2b. Verarbeitung von OIDs vom Datentyp "float"

Die Auslastung der USV zeigt aktuell 7% (übers Webinterface).

Via snmpget sieht das so aus:
root@raspberrypi2:~# snmpget -c public -v 2c 192.168.178.30 .1.3.6.1.4.1.6574.4.2.12.1.0
iso.3.6.1.4.1.6574.4.2.12.1.0 = Opaque: Float: 7.000000

Und in FHEM wird der Datentyp nun anders dargestellt oder sogar konvertiert? Leider bin ich noch blutiger Anfänger, daher hänge ich hier nun. Wie kann ich den Wert weiterverarbeiten?

--- Code: ---     2015-12-29 16:39:19   upsBatteryChargeValue 0x9f780442c80000
     2015-12-29 16:39:19   upsInfoLoadValue0 0x9f780440e00000
--- Ende Code ---

Im Moment habe ich mir damit beholfen ein reading einzurichten, dass einfach den snmpget Befehl absetzt und hier wird das Resultat 1:1 in FHEM übernommen. Allerdings laufe ich hier in das nächste Problem :).

Readings halten sich scheinbar nicht an die konfigurierten Intervalle (INTERVAL, INTERVAL_FS).
Test1 und UpsLoadInPct sollten eigentlich regelmäßig aktualisiert werden (alle 5 bzw. 10min) aber lt. list wurden sie das letzte Mal von 3 Std. aktualisiert. Beim reading Test0 handelt es sich um einen Fehlversuch.


--- Code: ---Internals:
   CONNECTS   335
   DEF        300 600 192.168.178.30
   FD         61
   HAS_Net::SNMP 1
   HOST       192.168.178.30
   INTERVAL   300
   INTERVAL_FS 600
   LAST_DISCONNECT 2015-12-28 16:29:00
   NAME       ds214play
   NR         462
   NTFY_ORDER 50-ds214play
   PARSED     5
   PARTIAL
   PID        28832
   SENT       6
   STARTED    1
   STATE      5.75 5.63 5.56
   SystemDescription Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686
   SystemName diskstation
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 600
   snmpCommunity public
   snmpVersion 2
   uname      Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686 GNU/Linux synology_evansport_214play
   QUEUE:
     HASH(0x49a7680)
     HASH(0x42b85b8)
     HASH(0x42c0840)
     HASH(0x485b038)
   Readings:
     2015-12-28 11:29:18   Test0           SNMPv2-SMI::enterprises.6574.4.2.12.1.0 = Opaque: Float: 7.000000
     2015-12-29 14:00:36   Test1           Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686 GNU/Linux synology_evansport_214play
     2015-12-29 14:00:36   UpsLoadInPct    7.000000
     2015-12-29 17:04:40   connection      connected
     2015-12-29 17:04:44   load            5.75
     2015-12-29 17:04:44   state           5.75 5.63 5.56
     2015-12-29 17:04:44   temperature     35
     2015-12-29 17:04:44   temperature0    35
     2015-12-29 17:04:44   upsBatteryChargeValue 0x9f780442c80000
     2015-12-29 17:04:44   upsInfoLoadValue0 0x9f780440e00000
     2015-12-28 11:29:17   uptime          1 days, 14:21
   filesystems:
   Helper:
     has_proc_loadavg 1
     has_proc_stat 1
     has_proc_uptime 1
     proc_stat_old:
       691555
       1582
       667758
       90242674
       1751979
       0
       83925
       0
       0
       0
Attributes:
   mibs       .1.3.6.1.4.1.6574.4.2.12.1.0:upsInfoLoadValue0,.1.3.6.1.4.1.6574.1.2.0:temperature0,.1.3.6.1.4.1.6574.4.3.1.1.0:upsBatteryChargeValue
   readings   UpsLoadInPct:snmpget -c public -v 2c -Oqv 192.168.178.30 .1.3.6.1.4.1.6574.4.2.12.1.0
Test1:uname -a
   room       Monitoring
   showpercent 1
   snmp       1
   snmpCommunity public
   snmpVersion 2
   stat       1
   synologytemperature 1
   uptime     1
   verbose    5
--- Ende Code ---

Wie kann ich einen Interval setzen für readings?

Vielen Dank im Voraus.
Gruß Sven

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln