Autor Thema: überarbeitet SYSSTAT modul: non-blocking, remote kommandos, beliebige readings  (Gelesen 10845 mal)

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
anbei eine erste test version des SYSTAT moduls mit den folgenden neuen möglichkeiten:
  • das überwachen entfernter hosts per ssh ist komplett auf non-blocking umgestellt.
    es wird pro host nur noch eine einzige ssh verbindung aufgemacht, offen gehalten und wiederverwendet. die alte version hat pro update mehrere ssh verbindungen auf und wieder zu gemacht. das kann je nach system und netzwerk insgesamt zu verzögerungen im sekunden bereich führen und erzeugt auch auf dem zu überwachenden system eine deutlich höhere last.

  • für systeme die per ssh überwacht werden ist es möglich kommandos an das entferntes system zu senden. z.b. shutdown zum runterfahren.
    beispiel: set <device> raw shutdown -h now

  • mit dem neuen attribut readings lassen sich beliebige zusätzliche readings konfigurieren deren inhalt die rückgabe eines kommandos sein kann.
    die readings werden als liste von reading:kommando paren angegeben die durch newline getrennt sein müssen. im folgenden beispiel werden die readings processes und temperature definiert. processes enthält die anzahl der gerade laufen prozesse und temperature die per snmp abgefragte systemperatur einer synology diskstation. im unterschied zum normalen snmp mode blockiert fhem durch die anfrage nicht da das komplette kommando im hintergrund und auf dem zu überwachenden system ausgeführt wird.
    attr <device> readings processes:ps ax | wc -l\                                   
                            temperature:snmpwalk -c public -v 1 10.0.1.21 .1.3.6.1.4.1.6574.1.2.0 | grep -oE ..$


  • mit dem attribut readingsFormat können die so erhaltenen werte für die readings noch aufbereitet werden.
    im folgenden beispiel werden die temperaturen aller on-board temperaturfahler und die frequenzen aller cpu kerne aus den entsprechenden files unter /sys/devices/system/cpu und /sys/class/thermal ausgelesen. die jeweils mehrzeilige ausgabe wird zum einen in einem temperatures reading zusammengefasst das das die einzelnen werte durch leerzeichen getrennt enthält und die einzel temperaturen werden zusätzlich in grad celsius umgerechnet und auf einzelne temppeatureX readings aufgeteilt. die frequenz werte werden ebenfalls aufgeteilt und zusäzlich noch gerundet.                 
    attr <device> readings temperature:cat /sys/class/thermal/thermal*/temp\                       
                            temperatures:cat /sys/class/thermal/thermal*/temp\                     
                            frequency:cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq
     
    attr <device> readingsFormat { frequency => '{ $VALUE = [map {int($_ / 1000)} split("\n", $VALUE)] }',\
                            temperature => '{ $VALUE = [map {$_ / 1000} split("\n", $VALUE)] }',\
                            temperatures => '{ $VALUE =~ s/\n/ /g }' }


    das aufteilen auf mehrere durchnummerierte readings erfolg automatisch wenn $VALUE eine array ref ist. siehe screenshot.

  • auch lokal ausgeführte kommandos werden non-blocking im hintergrund ausgeführt. wenn sie sich nach 10 sekunden nicht beendet haben werden sie automatisch beendet. frage: timeout konfigurierbar machen?

  • Sys::Statistics::Linux ist nicht mehr nötig
 

die non-blocking änderungen betreffen zur zeit nur lokale und per ssh überwachte systeme und sind für snmp noch nicht umgesetzt. das soll vor dem einchecken aber noch passieren.

gruss
  andre

edit 03.12.2015: die snmp abfragen sind jetzt auch non-blocking

edit 10.12.2015: neues attribut noSSH.

edit 06.10.2015: readings und readingsFormat fix

edit 2016-06-15: automatische abfrage funktioniert auch ohne host angabe wieder, diverse warnungen behoben.

edit 2016-06-30: readingsFormat kann auch für mibs verwendet werden.

edit 2016-12-22: perl 5.24 inkompatibilitäten repariert 
« Letzte Änderung: 29 Dezember 2016, 22:48:00 von justme1968 »
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline pipp37

  • Developer
  • Full Member
  • ****
  • Beiträge: 137
Hallo.
Thanks for update.


Ich habe das Modul installiert und da ich meinen Mikrotik Router nur per SNMP abfrage, bekomme ich diese Logs.
Auch werden dann leider keine SNMP Abfragen mehr gemacht,
Es scheint so, als ob immer ssh Requests gemacht werden obwohl kein SSH konfiguriert ist.



2015.10.25 10:46:29 2: MTMainRouterStat: starting: /usr/bin/ssh -q 192.168.27.254
2015.10.25 10:46:30 3: MTMainRouterStat: read: end of file reached while sysread
2015.10.25 10:46:30 3: MTMainRouterStat: Disconnected

list <device>

Internals:
   CONNECTS   49
   DEF        300 600 192.168.27.254
   HAS_Net::SNMP 1
   HOST       192.168.27.254
   INTERVAL   300
   INTERVAL_FS 600
   LAST_DISCONNECT 2015-10-25 10:49:48
   NAME       MTMainRouterStat
   NR         571
   NTFY_ORDER 50-MTMainRouterStat
   PARSED     0
   PARTIAL
   SENT       1
   STARTED    0
   STATE      Disconnected
   SystemDescription RouterOS RB2011UAS-2HnD
   SystemName FirewallPipp
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 600
   snmpCommunity public
   snmpVersion 2
   QUEUE:
     HASH(0xa4130d0)
   Readings:
     2015-10-25 10:49:48   connection      disconnected
     2015-10-25 10:39:17   entPhysicalDescr RouterOS 6.32.3 on RB2011UAS-2HnD
     2015-10-25 10:39:17   load            0.03
     2015-10-25 10:39:17   lteBytesIN      950158506
     2015-10-25 10:39:17   lteBytesOUT     622815630
     2015-10-25 10:39:17   redBytesIN      95117103
     2015-10-25 10:39:17   redBytesOUT     55270818
     2015-10-25 10:39:17   state           3
     2015-10-14 20:08:08   sysDescr        RouterOS RB2011UAS-2HnD
     2015-10-25 10:39:17   uptime          2 days, 00:17:37.00
   Helper:
Attributes:
   mibs       .1.3.6.1.2.1.47.1.1.1.1.2.65536:entPhysicalDescr
.1.3.6.1.2.1.2.2.1.10.2:redBytesIN
.1.3.6.1.2.1.2.2.1.16.2:redBytesOUT
.1.3.6.1.2.1.2.2.1.10.3:lteBytesIN
.1.3.6.1.2.1.2.2.1.16.3:lteBytesOUT
   room       System
   snmp       1
   snmpCommunity public
   snmpVersion 2
   uptime     1



Vmware-ESX-VM-Debian8 Main-FHEM -> Raspberry Pi-B ser2net
HMLAN mit HomeMatic Komponenten, Busware SCC433 stacked SCC868 (culfw), Jeelink, MAX Heizkörperthermostate, Enigma2 (Vudo2/DM800SE), Philips 55" Ambilight PHTV - WMBUS EnergyCam+Engelmann FAW, Intertechno-Komponenten, Ubiquiti mPower

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
ja. das stimmt. diese version bevorzugt die abfrage über ssh.

mal sehen wie ich das rückwärtskompatibel hin bekomme.

wenn ich die snmp abfragen non-blocking hin bekomme kann ich aber sowieso wieder auf die alte reihenfolge schalten.

stay tuned...

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline pipp37

  • Developer
  • Full Member
  • ****
  • Beiträge: 137
Thanks.
Dann warte ich darauf und teste es dann. Leider musste ich wieder das originale Modul installieren weil sonst gar keine SNMP Abfragen  gemacht wurden.
Gruss Armin
Vmware-ESX-VM-Debian8 Main-FHEM -> Raspberry Pi-B ser2net
HMLAN mit HomeMatic Komponenten, Busware SCC433 stacked SCC868 (culfw), Jeelink, MAX Heizkörperthermostate, Enigma2 (Vudo2/DM800SE), Philips 55" Ambilight PHTV - WMBUS EnergyCam+Engelmann FAW, Intertechno-Komponenten, Ubiquiti mPower

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Ist die per update beziehbare Version jetzt schon die nonblocking version?

Grüße Christian

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
nein. noch nicht. ich möchte erst noch ein paar kleinigkeiten aufräumen und snmp non-blocking machen.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Danke für die Info.

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Als erstes möchte ich mich für deine super Arbeit bedanken.
Nutze das "alte" SYSSTAT und jetzt bevorzugter auch das neue.
Nachdem fhem bei mir immer blockiert hatte, weil ich eine Synology Diskstation bei meiner Mutter überwache.
Ihr Router hatte einen Hardware Defekt, erst deswegen fiel mir auf das das "alte" SYSSTAT blockierte.
Abgefragt wurden die Daten per ssh.
Als ich den neuen Router heute in betrieb genommen habe, habe ich auch gleichzeitig die Portweiterleitung des ssh Port auf einen weniger auffälligen Port gelegt.
Per Konsole daheim funktioniert auch alles.
Wenn ich aber die Definition meines SYSSTAT Devices ändere define [Device] SYSSTAT 3600 3600 [url]:[port] bekomme ich keine Verbindung.
Mache ich etwas falsch oder unterstütz dein Modul keine Portangabe?
Falls zweiteres der Fall ist, wäre es von dir machbar das irgendwie zu unterstützen?
Das wäre wirklich super.

Grüße Christian     

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
im define kannst du nur den host angeben. keinen port.

einen anderen port (und vieles andere) kannst du aber pro gegenstelle über ssh.config auf ssh ebene konfigurieren.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Vielen Dank für die super schnelle Antwort.
Musste erst noch ein bisschen googeln, bin wirklich ein Newbie in Sachen Linux.
Aber "DIESES LINUX" ist echt schon ne spitze Sache  ;).
Vielen Dank nochmal jetzt funktioniert es.

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Ich wollte das neue SYSSTAT nur auch lokal nutzen und denke ich habe einen Bug gefunden
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

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

2015-12-03 20:38:15   load            1.45.
Gruß Christian

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
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
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Mh! Irgendwie habe ich es nicht angezeigt bekommen das du geantwortet hast.
Habe es jetzt ausprobiert und es funktioniert.

Vielen Dank, schönes WE.

Offline hoods

  • Jr. Member
  • **
  • Beiträge: 64
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 (?)
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

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:
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


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.

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

Gruss Sven
Odroid C2, FHEM 5.8, HMUSB, Jeelink, Rademacher DuoFern Stick, Benning WR über HTTPMOD

Offline hoods

  • Jr. Member
  • **
  • Beiträge: 64
Anbei ein paar learnings und Updates:

1. die beiden relevanten Filesysteme konnte ich bisher nicht erfolgreich einbinden wegen besagter Fehlermeldung.
Habt versucht mit:
"/volume1/@optware"
'/volume1/@optware'
/volume1/\@optware

@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 ...
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

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?
     2015-12-29 16:39:19   upsBatteryChargeValue 0x9f780442c80000
     2015-12-29 16:39:19   upsInfoLoadValue0 0x9f780440e00000

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.

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

Wie kann ich einen Interval setzen für readings?

Vielen Dank im Voraus.
Gruß Sven
Odroid C2, FHEM 5.8, HMUSB, Jeelink, Rademacher DuoFern Stick, Benning WR über HTTPMOD

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
zu 1: das muss ich mir anschauen. eigentlich sollte das sonderzeichen keine probleme machen. was gibt ein get filesystems?

zu 2a: das siehst du schon direkt an der snmpwalk ausgabe. schau mal links vor das = zeichen in der ausgabe. da ist ads .0 auch schon da.

zu 2b: ich meine die perl snmp lib hatte probleme mit float werten. schau bite mal im anderen thread. da gab es schon mal etwas dazu. bis wir wissen woran es liegt kannst du über das readings attribut ein snmpwalk verwenden wie im ersten post beschrieben.

sehe gerade das hast du schon gemacht :). die readings werden im gleichen haupt intervall aktualisiert. was steht bei verbose 5 im log ?

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline hoods

  • Jr. Member
  • **
  • Beiträge: 64
Hi andre,

zu 1.
beim Aufruf der Funktion über das Fhem WebIF (Knopf drücken) passierte gar nichts, ich habe dann den Befehl nochmal händisch eingegeben. Hier der Log Auszug mit verbose 5.

2015.12.30 14:51:18 2: ds214play: unanswered query in queue, reconnecting
2015.12.30 14:51:18 4: ds214play: sending: uname -a
2015.12.30 14:51:18 2: ds214play: starting: /usr/bin/ssh -q 192.168.178.30
2015.12.30 14:51:19 5: ds214play: parsing: uname -a <- Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686 GNU/Linux synology_evansport_214play
2015.12.30 14:51:19 4: ds214play: sending: ls /proc/stat
2015.12.30 14:51:19 4: ds214play: sending: ls /proc/uptime
2015.12.30 14:51:19 5: ds214play: parsing: ls /proc/stat <- /proc/stat
2015.12.30 14:51:19 4: ds214play: has_proc_stat: 1
2015.12.30 14:51:19 4: ds214play: sending: ls /proc/loadavg
2015.12.30 14:51:19 5: ds214play: parsing: ls /proc/uptime <-
2015.12.30 14:51:19 3: ds214play: ls /proc/uptime:
2015.12.30 14:51:19 5: ds214play: parsing: ls /proc/loadavg <-
2015.12.30 14:51:19 3: ds214play: ls /proc/loadavg:
2015.12.30 14:51:23 5: ds214play: trying /proc/loadavg
2015.12.30 14:51:23 4: ds214play: sending: cat /proc/loadavg
2015.12.30 14:51:23 5: ds214play: trying /proc/stat
2015.12.30 14:51:23 5: ds214play: trying /proc/uptime
2015.12.30 14:51:23 4: ds214play: sending: cat /proc/stat
2015.12.30 14:51:23 5: ds214play: parsing: cat /proc/loadavg <- 5.53 5.48 5.54 1/403 13409
2015.12.30 14:51:23 4: ds214play: BlockingCall finished: SYSSTAT_BlockingCall
2015.12.30 14:51:26 5: ds214play: trying /proc/loadavg
2015.12.30 14:52:22 5: ds214play: trying /proc/loadavg
2015.12.30 14:54:17 2: ds214play: unanswered query in queue, reconnecting
2015.12.30 14:54:17 4: ds214play: sending: uname -a
2015.12.30 14:54:18 2: ds214play: starting: /usr/bin/ssh -q 192.168.178.30
2015.12.30 14:54:19 5: ds214play: parsing: uname -a <- Linux diskstation 3.2.40 #5644 SMP PREEMPT Wed Oct 28 12:35:52 CST 2015 i686 GNU/Linux synology_evansport_214play
2015.12.30 14:54:19 4: ds214play: sending: ls /proc/stat
2015.12.30 14:54:19 4: ds214play: sending: ls /proc/uptime
2015.12.30 14:54:19 5: ds214play: parsing: ls /proc/stat <- /proc/stat
2015.12.30 14:54:19 4: ds214play: has_proc_stat: 1
2015.12.30 14:54:19 4: ds214play: sending: ls /proc/loadavg
2015.12.30 14:54:19 5: ds214play: parsing: ls /proc/uptime <-
2015.12.30 14:54:19 3: ds214play: ls /proc/uptime:
2015.12.30 14:54:19 5: ds214play: parsing: ls /proc/loadavg <-
2015.12.30 14:54:19 3: ds214play: ls /proc/loadavg:
2015.12.30 14:54:21 5: ds214play: trying /proc/loadavg
2015.12.30 14:54:21 4: ds214play: sending: df -kP
2015.12.30 14:54:21 5: ds214play: parsing: #filesystems:FHEMWEB:192.168.178.37:54641 <- Filesystem        1024-blocks       Used Available Capacity Mounted on
/var                  2451064    1017904   1330760      44% /usr/local/zarafa-licensed/var
/tmp                   358080        256    357824       1% /tmp
/run                   358080       3008    355072       1% /run
/dev/shm               358080          0    358080       0% /dev/shm
/volume1/@optware  2879527424 2118226228 761198796      74% /opt
/dev/sdq1          1922828180 1784811508 137914272      93% /volumeUSB1/usbshare
2015.12.30 14:54:22 5: ds214play: trying /proc/loadavg
2015.12.30 14:54:22 4: ds214play: sending: cat /proc/loadavg
2015.12.30 14:54:22 5: ds214play: trying /proc/stat
2015.12.30 14:54:22 5: ds214play: trying /proc/uptime
2015.12.30 14:54:23 4: ds214play: sending: cat /proc/stat
2015.12.30 14:54:23 5: ds214play: parsing: cat /proc/loadavg <- 5.49 5.45 5.51 1/404 13594
2015.12.30 14:54:23 4: ds214play: BlockingCall finished: SYSSTAT_BlockingCall


Zu 2b, ich mach mich mal auf die Suche bzgl. float. Danke für den Hinweis. Die beiden readings werden momentan nicht aktualisiert, warum kann ich in den Logs nicht erkennen. Anbei der Ausschnitt:
2015.12.29 14:00:36 4: ds214play: sending: snmpget -c public -v 2c -Oqv 192.168.178.30 .1.3.6.
1.4.1.6574.4.2.12.1.0
2015.12.29 14:00:36 5: ds214play: parsing: cat /proc/uptime <-
2015.12.29 14:00:36 3: ds214play: cat /proc/uptime:
2015.12.29 14:00:36 4: ds214play: BlockingCall finished: SYSSTAT_BlockingCall
2015.12.29 14:00:36 4: ds214play: sending: uname -a
2015.12.29 14:00:36 5: ds214play: parsing: #reading:UpsLoadInPct <- 7.000000
2015.12.29 14:00:36 5: ds214play: parsing: #reading: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:05:36 5: ds214play: trying /proc/loadavg
2015.12.29 14:05:36 4: ds214play: sending: cat /proc/loadavg
2015.12.29 14:05:36 5: ds214play: trying /proc/stat
2015.12.29 14:05:36 5: ds214play: trying /proc/uptime
2015.12.29 14:05:36 4: ds214play: sending: cat /proc/stat
2015.12.29 14:05:36 5: ds214play: parsing: cat /proc/loadavg <- 5.79 5.74 5.78 2/405 20765
2015.12.29 14:05:36 4: ds214play: BlockingCall finished: SYSSTAT_BlockingCall
2015.12.29 14:10:36 2: ds214play: unanswered query in queue, reconnecting
2015.12.29 14:10:36 4: ds214play: sending: uname -a

Die beiden readings werden lt. Logfile nur dieses eine Mal ausgelesen.
Bei Bedarf kann ich die Konfig auch nochmal komplett löschen, ist eh noch im Versuchsstadium.

Danke für die Hilfe!

Gruß Sven
« Letzte Änderung: 30 Dezember 2015, 19:47:25 von hoods »
Odroid C2, FHEM 5.8, HMUSB, Jeelink, Rademacher DuoFern Stick, Benning WR über HTTPMOD

Offline Schlimbo

  • Full Member
  • ***
  • Beiträge: 309
Hallo Andre,

habe mir gerade die Version aus deinem ersten Beitrag herunter geladen.
Allerdings fehlen in dieser Version in der AttrList die neuen Attribute "readings" und "readingsFormat".
  $hash->{AttrList} = "disable:1 disabledForIntervals raspberrycpufreq:1 raspberrytemperature:0,1,2 synologytemperature:0,1,2 stat:1 uptime:1,2 noSSH:1,0 ssh_user";nach dem einfügen der Attribute funktioniert es dann aber.

Habe jetzt aber noch das Problem, dass die Readings nicht im angegeben Intervall aktualisiert werden.
Im Log mit Verbose 5 ist nichts zu sehen.
Nur beim manuellen Update sehe ich einen Eintrag im Log:
2016.01.05 21:01:53 5: sysstat: parsing: #reading:nVidia_Displaystate <- off

2016.01.05 21:01:53 5: sysstat: parsing: cat /proc/loadavg <- 0.01 0.04 0.05 1/133 9391
2016.01.05 21:01:53 5: sysstat: trying /proc/loadavg
Das sieht denke ich okay aus, Manuelle Updates geben auch die Readings zurück.

Mein Konfig sieht so aus:
Internals:
   DEF        60 120
   HAS_Net::SNMP 0
   INTERVAL   60
   INTERVAL_FS 120
   NAME       sysstat
   NR         506
   NTFY_ORDER 50-sysstat
   STATE      0.01 0.04 0.05
   TYPE       SYSSTAT
   interval_fs 120
   Readings:
     2016-01-05 21:01:53   load            0.01
     2016-01-05 21:01:53   nVidia_Displaystate off
 
     2016-01-05 21:01:53   state           0.01 0.04 0.05
   filesystems:
   Helper:
     has_proc_loadavg 1
     has_proc_stat 1
     has_proc_uptime 1
Attributes:
   readings   nVidia_Displaystate:adb shell 'if [ -z "$(dumpsys power | grep "Display Power..state=ON")" ]; then echo off; else echo on; fi'
   verbose    5

Damit sollten doch die Readings alle  60 Sekunden aktualisiert werden, oder habe ich noch etwas falsch eingestellt?

Finde die neue Funktion, eigene Readings zusammen zu bauen echt klasse.
Möchte dein Modul etwas Zweckentfremdet einsetze,  um damit einen nVidia Shield TV über "ADB" auszuelesen und mir hierzu einige Readings zusammen stellen. Nutze dann dein Modul sozusagen als "nVidia Modul" :)
Das Modul gibt mir aber auch die System Readings "load" und "state" zurück, die ich jedoch in diesem Zusammenhang nicht benötige. Ist es möglich diese Readings zu deaktivieren, so dass nur die unter "attr readings" eingestellten Reading vorhanden sind?

Gruß Schlimbo

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
du hast recht. das attribut war eine zeile tiefer gerutscht und hat nur bei aktiviertem snmp funktioniert. hab es repariert.

ich hab die version hier: http://forum.fhem.de/index.php/topic,42771.msg348498.html#msg348498 noch mal aktualisiert.

schau mal ob das regelmässige abrufen damit jetzt auch geht. das war ein ähnliches problem.

mir ist noch nichts vernünftiges eingefallen wie ich load und state vom anwender deaktivierbar machen kann ;)

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Schlimbo

  • Full Member
  • ***
  • Beiträge: 309
Danke für die neue Version.
Die Readings werden aber immer noch nicht aktualisiert.
Auch das Absetzen von Befehlen mit  "set <device> raw"  funktioniert bei mir nicht (keine Rückmeldung nach dem Absetzen des Befehls und auch kein Eintrag im Log).

Wie ist es bei den Anderen? funktioniert es bei euch?



Offline hoods

  • Jr. Member
  • **
  • Beiträge: 64
Mir gehts genauso bzgl. der Aktualisierung der readings.
set <device> raw <os befehl> gibt nichts zurück und auch get <device> filesystems über das Web-IF gibt nichts zurück.

Gruß Sven
Odroid C2, FHEM 5.8, HMUSB, Jeelink, Rademacher DuoFern Stick, Benning WR über HTTPMOD

Offline vbs

  • Hero Member
  • *****
  • Beiträge: 1527
Ich habe auch seit heute Probleme mit den Updates. Ich habe heute auf r10538 geupdatet. Ich verwende das Modul, um von einem Remote-(Windows)-Host Werte per SNMP zu holen. Version r9504 klappt wunderbar.

Hier ein List des Devices:
Internals:
   CONNECTS   3
   DEF        120 600 ben
   HAS_Net::SNMP 1
   HOST       ben
   INTERVAL   120
   INTERVAL_FS 600
   LAST_DISCONNECT 2016-01-18 22:00:00
   NAME       fl_benStats
   NR         479
   NTFY_ORDER 50-fl_benStats
   PARSED     0
   PARTIAL
   SENT       1
   STARTED    0
   STATE      Disconnected
   SystemDescription Hardware: Intel64 Family 6 Model 58 Stepping 9 AT/AT COMPATIBLE - Software: Windows Version 6.3 (Build 10586 Multiprocessor Free)
   SystemName Ben
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 600
   QUEUE:
     HASH(0x6928040)
   Readings:
     2016-01-18 22:00:00   connection      disconnected
     2016-01-18 21:59:05   load            0.06
     2016-01-18 21:58:15   loadAvg         1.5
     2016-01-18 21:59:05   numProcesses    96
     2016-01-18 21:59:05   state           4,0,1,1
     2016-01-18 21:53:44   storMass1Free   1021.3
     2016-01-18 21:53:44   storMass1Size   6001.0
     2016-01-18 21:53:44   storMass1Used   4979.7
     2016-01-18 21:53:44   storMass2Free   171.6
     2016-01-16 14:16:22   storMass2Size   3000.5
     2016-01-16 14:16:22   storMass2Used   2828.9
     2016-01-18 21:53:44   storMass3Free   3632.6
     2016-01-18 21:56:54   storMass3Size   6001.0
     2016-01-18 21:56:54   storMass3Used   2366.8
     2016-01-18 21:59:05   storRamFree     17.1
     2016-01-18 21:59:05   storRamSize     25.6
     2016-01-18 21:59:05   storRamUsed     8.5
     2016-01-18 21:56:54   storSystemFree  43.2
     2016-01-18 21:56:54   storSystemSize  119.5
     2016-01-18 21:56:54   storSystemUsed  76.3
     2016-01-18 21:59:05   storageAllocUnits0 4096
     2016-01-18 21:59:05   storageAllocUnits1 4096
     2016-01-18 21:59:05   storageAllocUnits2 4096
     2016-01-18 21:59:05   storageAllocUnits3 4096
     2016-01-18 21:59:05   storageAllocUnits4 65536
     2016-01-18 21:59:05   storageAllocUnits5 65536
     2016-01-18 21:59:05   storageSize0    29176575
     2016-01-18 21:59:05   storageSize1    1465097471
     2016-01-18 21:59:05   storageSize2    732533503
     2016-01-18 21:59:05   storageSize3    1465097471
     2016-01-18 21:59:05   storageSize4    448646
     2016-01-18 21:59:05   storageSize5    391302
     2016-01-18 21:59:05   storageUsed0    18633409
     2016-01-18 21:59:05   storageUsed1    1215752726
     2016-01-18 21:59:05   storageUsed2    690641225
     2016-01-18 21:59:05   storageUsed3    577827539
     2016-01-18 21:59:05   storageUsed4    131170
     2016-01-18 21:59:05   storageUsed5    129389
     2016-01-18 21:59:05   uptime          2 days, 10:33:19.34
Attributes:
   alias      Ben - Status
   event-on-change-reading .*
   event-on-update-reading (stor.*Size|stor.*Free|stor.*Used)
   group      Server
   icon       time_graph
   mibs       .1.3.6.1.2.1.25.1.6.0:numProcesses ,.1.3.6.1.2.1.25.2.3.1.4.1:storageAllocUnits0 ,.1.3.6.1.2.1.25.2.3.1.4.2:storageAllocUnits1 ,.1.3.6.1.2.1.25.2.3.1.4.3:storageAllocUnits2 ,.1.3.6.1.2.1.25.2.3.1.4.4:storageAllocUnits3 ,.1.3.6.1.2.1.25.2.3.1.4.5:storageAllocUnits4 ,.1.3.6.1.2.1.25.2.3.1.4.6:storageAllocUnits5 ,.1.3.6.1.2.1.25.2.3.1.5.1:storageSize0 ,.1.3.6.1.2.1.25.2.3.1.5.2:storageSize1 ,.1.3.6.1.2.1.25.2.3.1.5.3:storageSize2 ,.1.3.6.1.2.1.25.2.3.1.5.4:storageSize3 ,.1.3.6.1.2.1.25.2.3.1.5.5:storageSize4 ,.1.3.6.1.2.1.25.2.3.1.5.6:storageSize5 ,.1.3.6.1.2.1.25.2.3.1.6.1:storageUsed0 ,.1.3.6.1.2.1.25.2.3.1.6.2:storageUsed1 ,.1.3.6.1.2.1.25.2.3.1.6.3:storageUsed2 ,.1.3.6.1.2.1.25.2.3.1.6.4:storageUsed3 ,.1.3.6.1.2.1.25.2.3.1.6.5:storageUsed4 ,.1.3.6.1.2.1.25.2.3.1.6.6:storageUsed5
   room       Flur
   snmp       1
   stateFormat CPU: loadAvg % (storSystemFree GB/storMass1Free GB/storMass2Free GB/storMass3Free GB)
   uptime     1
   userReadings loadAvg:load { ReadingsVal($name,"load",0) * 25 },storRamFree:storageUsed5 { VBSUtils_SnmpGetStorageFree($name, 5)},storRamSize:storageUsed5 { VBSUtils_SnmpGetStorageSize($name, 5)},storRamUsed:storageUsed5 { VBSUtils_SnmpGetStorageUsed($name, 5)},storMass1Size:storageUsed1 { VBSUtils_SnmpGetStorageSize($name, 1)},storMass1Used:storageUsed1 { VBSUtils_SnmpGetStorageUsed($name, 1)},storMass1Free:storageUsed1 { VBSUtils_SnmpGetStorageFree($name, 1)},storMass2Size:storageUsed2 { VBSUtils_SnmpGetStorageSize($name, 2)},storMass2Used:storageUsed2 { VBSUtils_SnmpGetStorageUsed($name, 2)},storMass2Free:storageUsed1 { VBSUtils_SnmpGetStorageFree($name, 2)},storMass3Size:storageUsed3 { VBSUtils_SnmpGetStorageSize($name, 3)},storMass3Used:storageUsed3 { VBSUtils_SnmpGetStorageUsed($name, 3)},storMass3Free:storageUsed1 { VBSUtils_SnmpGetStorageFree($name, 3)},storSystemSize:storageUsed0 { VBSUtils_SnmpGetStorageSize($name, 0)},storSystemUsed:storageUsed0 { VBSUtils_SnmpGetStorageUsed($name, 0)},storSystemFree:storageUsed0 { VBSUtils_SnmpGetStorageFree($name, 0)}

Im Log kommt jetzt ständig sowas:
2016.01.18 22:00:00 2: fl_benStats: unanswered query in queue, reconnecting
2016.01.18 22:00:00 2: fl_benStats: starting: /usr/bin/ssh -q ben
2016.01.18 22:00:00 3: fl_benStats: read: error during sysread: No such process
2016.01.18 22:00:00 3: fl_benStats: read: end of file reached while sysread
2016.01.18 22:00:00 3: fl_benStats: Disconnected
2016.01.18 22:00:00 3: fl_benStats: read: end of file reached while sysread
2016.01.18 22:00:10 2: fl_benStats: starting: /usr/bin/ssh -q ben
2016.01.18 22:00:10 3: fl_benStats: read: error during sysread: No such process
2016.01.18 22:00:10 3: fl_benStats: read: end of file reached while sysread
2016.01.18 22:00:10 3: fl_benStats: Disconnected
2016.01.18 22:00:10 3: fl_benStats: read: end of file reached while sysread
2016.01.18 22:00:20 2: fl_benStats: starting: /usr/bin/ssh -q ben
2016.01.18 22:00:20 3: fl_benStats: read: error during sysread: No such process
2016.01.18 22:00:20 3: fl_benStats: read: end of file reached while sysread
2016.01.18 22:00:20 3: fl_benStats: Disconnected
2016.01.18 22:00:20 3: fl_benStats: read: end of file reached while sysread

Der will scheinbar eine SSH-Verbindung aufbauen, was ich aber nicht benutzen möchte, da der Remote Windows ist. Ich hab mal noSSH auf 1 gesetzt, dann kommst sowas:
2016.01.18 22:01:54 2: fl_benStats: unanswered query in queue, reconnecting
2016.01.18 22:02:09 2: fl_benStats: unanswered query in queue, reconnecting
2016.01.18 22:02:27 2: fl_benStats: unanswered query in queue, reconnecting

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
arg... eigentlich wollte ich nur die doku änderung einchecken. das hätte garnicht die neue version sein sollen.

ich mache es rückgängig.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline vbs

  • Hero Member
  • *****
  • Beiträge: 1527
Ok, danke dir!

Offline kaihs

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 806
Ich setze das Modul ausschließlich für SNMP Abfrage eines Druckers ein, und der kann auch schon mal ausgeschaltet sein.

Ich bekomme dann regelmäßig die Warnung
2016.01.25 20:03:07 1: PERL WARNING: Use of uninitialized value $ret in numeric le (<=) at ./FHEM/32_SYSSTAT.pm line 291.

Der entsprechende Codeabschnitt
  if(!defined($ret) || $ret <= 0) {
    SYSSTAT_Disconnect( $hash );
    delete $hash->{PID};

    Log3 $name, 3, "$name: read: error during sysread: $!" if(!defined($ret));
    Log3 $name, 3, "$name: read: end of file reached while sysread" if( $ret <= 0);

    InternalTimer(gettimeofday()+10, "SYSSTAT_Connect", $hash, 0);
    return undef;
  }

müsste vielleicht besser so aussehen

  if(!defined($ret) || $ret <= 0) {
    SYSSTAT_Disconnect( $hash );
    delete $hash->{PID};

    Log3 $name, 3, "$name: read: error during sysread: $!" if(!defined($ret));
    Log3 $name, 3, "$name: read: end of file reached while sysread" if(defined($ret) && $ret <= 0);

    InternalTimer(gettimeofday()+10, "SYSSTAT_Connect", $hash, 0);
    return undef;
  }
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, FHEM V5.8, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EMT7110, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, FHEMduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Offline ebk

  • New Member
  • *
  • Beiträge: 6
Hallo,

danke für das SYSSTAT Modul. Ich nutze es relativ umfangreich um meine gesammelten im Haus verteilten Einplatinenrechner zu monitoren und das NAS zu überwachen. Beim auslesen der Filesysteme nutzt Du df -kP was mir dahingehend probleme macht, als dass QNAPs leider kein vollwertiges df mitbringen sondern nur eine Busybox deren df kommando den Parameter -P nicht kennt.
Wenn ich das Modul richtig lese wird die Rückabe von df -kP an Sys::Statistics::Linux::DiskUsage übergeben und dieses Modul erwartet gar nicht zwingend Posix formatierten input. Zur Überwachung der Filesysteme auf meinem QNAO Nas habe ich deshalb den -P Parameter einfach aus dem Modul entfernt und es funktioniert problemlos.
Gibt es einen Grund den ich noch nicht durchschaut habe weshalb der -P Paramter angezogen wird?

Offline hoods

  • Jr. Member
  • **
  • Beiträge: 64
Hallo Andre,

gibts in der Zwischenzeit eine neue Version des Moduls zum testen?

Gruß Sven
Odroid C2, FHEM 5.8, HMUSB, Jeelink, Rademacher DuoFern Stick, Benning WR über HTTPMOD

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
noch nicht.

kommt aber noch.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline update71

  • Full Member
  • ***
  • Beiträge: 106
Hi, ich versuche krampfhaft eine APC USV Management Card auszulesen. Speziell geht es mir um den angeschlossenen Temp Sensor.

ein List sieht so aus:
Internals:
   CFGFN
   CONNECTS   27
   DEF        60 600 172.16.85.245
   HAS_Net::SNMP 1
   HOST       172.16.85.245
   INTERVAL   60
   INTERVAL_FS 600
   LAST_DISCONNECT 2016-05-31 17:30:53
   NAME       usv01
   NR         52
   NTFY_ORDER 50-usv01
   PARSED     0
   PARTIAL
   SENT       1
   STARTED    0
   STATE      Disconnected
   SystemDescription APC Web/SNMP Management Card (MB:v4.1.0 PF:v6.2.0 PN:apc_hw05_aos_620.bin AF1:v6.2.0 AN1:apc_hw05_sumx_620.bin MN:AP9631 HR:05 SN: Zxxxxxxxxx5 MD:04/29/2015) (Embedded PowerNet SNMP Agent SW v2.2 compatible)
   SystemName usv01.xxx.intern
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 600
   snmpCommunity public
   snmpVersion 1
   QUEUE:
     HASH(0x95c6d64)
   Readings:
     2016-05-31 17:30:53   connection      disconnected
Attributes:
   noSSH      1
   readings   temperature:snmpwalk -c public -v 1 .1.3.6.1.4.1.318.1.1.10.2.3.2.1.4 | grep -oE ..$
   room       USV
   snmp       1
   snmpCommunity public
   snmpVersion 1
   verbose    5

Wenn ich den String mit IP von der Linux Konsole absetze erhalte ich den korrekten Wert. Hier kommt aber nüscht :(

Hier noch der relevante Auszug aus der fhem.cfg
define FF_nimd_usv01 SYSSTAT 60 600 172.16.85.245
attr usv01 noSSH 1
attr usv01 readings temperature:snmpwalk -c public -v 1 .1.3.6.1.4.1.318.1.1.10.2.3.2.1.4 | grep -oE ..$
attr usv01 room USV
attr usv01 snmp 1
attr usv01 snmpCommunity public
attr usv01 snmpVersion 1
attr usv01 verbose 5

Kann jemand helfen?

Danke Th.
Thomas
###########
Raspi mit Fhem, nanoCUL 433 + mehrere Brennstuhl Steckdosen - HM-LAN + Thermostat, 6 fach Taster, Aussensensor - HUEBridge + 3 weiße LEDs ... mehr folgt

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
ich habe die version im ersten beitrag noch mal aktualisiert:

- das problem das es ohne host angabe keine automatischen updates gab ist behoben
- es gab noch zwei snmp anfragen die nicht non-blocking waren
- diverse perl warnungen behoben

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mischu860

  • New Member
  • *
  • Beiträge: 21
  • Berufstheoretiker mit zwei rechten händen
hallo zusammen.


kann mir das noch jemand erklären wie das funktioniert wenn mann mehrere readings auf einem device hat?


ich habe 5 readings.

es wird jedoch immer nur das letzt hinzugefügte reading automatisch aktualisiert.


ich würde gerne ein svgplot davon erstellen. ist es möglich das von einem systat device ein log file erstellt werden kann das die readings beinhaltet?


gruss mischu

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
zeig doch mal was du genau konfiguriert hast.

das loggen und plotten funktioniert wie bei jedem anderen device.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mischu860

  • New Member
  • *
  • Beiträge: 21
  • Berufstheoretiker mit zwei rechten händen
hi andre.

Vielleicht bin ich ja auch zu dumm dafür:

Im Printscreen siehst du meine readings.

Das letzt hinzugefügte ist jeweils das oberste.
Dann siehst du genau wie das immer wieder aktualisiert wird. Bei den anderen ist das nicht der Fall.
Das sind alles reine SNMP Abfragen die ich auf einem Geräte mache.
Das resultat muss schlussendlich noch /10 geteilt und geplottet werden.
Wie ich jedoch bemerkt habe wird von readings nicht automatisch ein FileLog erstellt sowie das bei normalen devices der Fall ist.

Ich muss jedoch auch zugeben das mit meinem aktuellen Wissensstand noch sehr viele Probleme bzw. Unwissenheit auf dem Stuhl vor dem Bildschirm sitzt...

Gruss Mischa

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
in deinem mibs attribut hat du doch nur ein reading konfiguriert. wenn du mehrere readings haben möchtest musst du sie alle in das attribut stecken.

kann es sein das du das config file direkt editierst? das ist keine gute idee und nicht nötig.

du musst alle mibs/readings in einem einzigen attr aufruf setzen. wenn du mehrere attr aufrufe hat überschreibst du jedes mal den aktuellen wert. am besten geht das im frontend in der detail ansicht. pro zeile ein mib/reading.


ich habe die version im ersten plot aktualisiert so das man readingsFormat auch für mibs verwenden kann.
ansonsten kannst du auch im plot durch 10 teilen.

readings erstellen niemals automatisch ein filelog. manche devices die über autocreate angelegt werden tun das. wobei noch nicht mal das eine gute idee ist. es gibt anwender die verwenden kein filelog sondern dblog.

wie du ein filelog anlegst findest du in der commandref und im wiki.

einen plot kannst du dir recht einfach im ploteditor zusammen klicken.

 
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
im ersten beitrag gibt es eine neue version bei der man readingsFormat auch für mibs verwenden kann.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mischu860

  • New Member
  • *
  • Beiträge: 21
  • Berufstheoretiker mit zwei rechten händen
Kann es sein das das Falsche File verlinkt ist?

Mein aktuelles FIle hat folgende überschrift:


# $Id: 32_SYSSTAT.pm 10567 2016-01-18 21:34:09Z justme1968 $

Das auf der ersten seite ist jedoch von 2015:

# $Id: 32_SYSSTAT.pm 9504 2015-10-17 20:55:25Z justme1968 $


Gruss mischu

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
das ist ok. bei nicht eingecheckten files wird die id zeile nicht aktualisiert. diese beta version wurde schon vor einer weile begonnen.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Kaufe

  • New Member
  • *
  • Beiträge: 40
Hallo zusammen,

versuche mit seit einiger Zeit über das sysstat modul auf einem anderen Server eine Datei auszulesen.
Doch wie ich feststellen musste kann das offizielle sysstats Modul keine Selbstdefinierten Readings mehr?

Würde als Beispiel gerne die datei /var/tmp/temp (mit dem inhalt "T: 10.34") und die Datei /var/tmp/air ("Air: 1071") einbinden.

Diese Version hier ist die, mit der es funktioniert:
# $Id: 32_SYSSTAT.pm 9504 2015-10-17 20:55:25Z justme1968 $

Die aktuellste kann es leider nicht mehr:
# $Id: 32_SYSSTAT.pm 10567 2016-01-18 21:34:09Z justme1968 $

Internals:
   CFGFN
   DEF        120 600
   HAS_Net::SNMP 1
   HAS_Sys::Statistics 0
   INTERVAL   120
   INTERVAL_FS 600
   NAME       BBxM
   NR         920
   STATE      Initialized
   TYPE       SYSSTAT
   interval_fs 600
   Readings:
     2016-09-01 12:12:05   cpufreq         600
     2016-09-01 12:12:05   temperature     49.388
   filesystems:
     /dev/mmcblk0p2
Attributes:
   filesystems /dev/mmcblk0p2
   raspberrycpufreq 1
   raspberrytemperature 1
   room       test
   showpercent 1
« Letzte Änderung: 01 September 2016, 12:39:48 von Kaufe »
FHEM 5.7 auf Raspberry Pi - 3B - Jessie-4.4.27-v7+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.66, 1-Wire DS18B20 via 2 * Ds9490R
FHEM 5.7 auf Raspberry PI - 3B - Jessie-4.4.27-v7+ | FHEM2FHEM, Pumpen + Brenner werden über GPIO ausgelesen

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
die 'offiziell' eingecheckte version konnte das noch nie. das ist neu in der im ersten post angehängten beta version.

du musst also erst mal noch diese version verwenden.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline Kaufe

  • New Member
  • *
  • Beiträge: 40
Hallo zusammen,

ah ok, heisst aber das ihr diese Funktion noch irgendwann hinzufügt? Oder wollt ihr das gar nicht mergen?
Bzw nur so aus interesse, wie geht das denn mit "offiziellen Mitteln", ohne gleich mit Fhem2Fhem arbeiten zu müssen?
Wie schon geschrieben, eigentlich wollte ich nur "via SSH eine Remote Datei auslesen und diese lokal im FHEM dann loggen um mit den Werten arbeiten zu können".

PS: Danke für den genialen kleinen "brunch", hatte mehrere Stunden reserchiert und "nur" deine möglichkeit gefunden die mir auf anhieb gefallen hat.

Grüße Kaufe
« Letzte Änderung: 02 September 2016, 11:17:50 von Kaufe »
FHEM 5.7 auf Raspberry Pi - 3B - Jessie-4.4.27-v7+ | CUL868 CC1101 - USB - Lite module - V3 FW 1.66, 1-Wire DS18B20 via 2 * Ds9490R
FHEM 5.7 auf Raspberry PI - 3B - Jessie-4.4.27-v7+ | FHEM2FHEM, Pumpen + Brenner werden über GPIO ausgelesen

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
ja. sobald ich dazu komme wird es eingecheckt. nimm so lange die version aus dem ersten post.

du kannst es auch genau so nach bauen :)

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Online gloob

  • Hero Member
  • *****
  • Beiträge: 1504
Antw:überarbeitet SYSSTAT modul: non-blocking, remote kommandos ...
« Antwort #41 am: 10 Oktober 2016, 16:07:51 »
Gibt es schon eine Idee, wann das neue Modul eingechecked wird?

Ich könnte die neue Version aus dem 1. Post jetzt nutzen und ein Update des FHEM Moduls unterbinden, allerdings würde ich dann nie über ein Update mitbekommen, wenn es Änderungen am neuen Modul gibt.

Der Hintergrund, warum ich das neue Modul nutzen möchte ist, dass ich damit ein NAS überwache und wenn das NAS nicht erreichbar ist, das Modul FHEM komplett blockiert.
« Letzte Änderung: 10 Oktober 2016, 16:09:41 von gloob »
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
ja kommt. ich bin noch nicht dazu gekommen noch zwei drei dinge zu testen. aber danach wird es ganz sicher eingecheckt.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline JohnDenver0815

  • New Member
  • *
  • Beiträge: 8
Ich bin hier gerade in mehrere Probleme/Fehlermeldungen gerannt, die mich dazu bewegt haben sämtliche Devices zu entfernen, sodass meine FHEM-Installation quasi frisch ist.
Nach einem shutdown restart und dem darauffolgenden define WHG_AZ_PowSW_State SYSSTAT 60 600 IP-ADDR sind folgende Logeinträge aufgetaucht:
2016.10.18 20:47:07 1: PERL WARNING: push on reference is experimental at ./FHEM/32_SYSSTAT.pm line 248.
2016.10.18 20:47:07 1: PERL WARNING: shift on reference is experimental at ./FHEM/32_SYSSTAT.pm line 328.
2016.10.18 20:47:08 1: PERL WARNING: Use of uninitialized value $ret in numeric le (<=) at ./FHEM/32_SYSSTAT.pm line 297.

Was mich beim Blick auf die Internals des SYSSTAT verwundert, es tauchen folgende Werte auf:
INTERVAL_FS   600
interval_fs   600

In den Readings steht lediglich connection und wird auch alle 60sec abgefragt.
Setze ich nun das Attribut noSSH   1 (da mir schleierhaft ist, wo ich das PW hinterlegen sollte, mir das Log vollgespammed wird und es bisher auch alles per Telnet ging), stoppt die minütige Abfrage aus mir nicht erkenntlichen Gründen. Updates sind ab hier nur noch manuell möglich.

Setze ich danach die SNMP-Attribute snmp, snmpCommunity und snmpVersion, so werden diverse Internals angelegt/befüllt (z.B. SystemDescription und SystemName).

Wird jetzt noch das Attribut mibs (.1.3.6.1.4.1.318.1.1.4.4.2.1.3.1:Port01_state) hinzugefügt, so tauchen unter Readings neben dem neuen Port01_state auch noch die Readings load (mit dem Wert 0) und state (ohne Wert) auf.
Ein Blick auf die Internals offenbart folgendes:
DEF   60 600 IP-ADDR
INTERVAL_FS   600
interval_fs   540

Um dem Ganzen noch einen drauf zu setzen: bei dem Versuch, das Attribut mibs zu löschen, verschwindet es zwar, allerdings bleiben die Readings unverändert. Lediglich die Internals haben jetzt wieder Normalwerte (nach shutdown restart):
DEF   60 600 IP-ADDR
INTERVAL_FS   600
interval_fs   600

Und auch im Log hat sich ein neuer Eintrag angefunden:
2016.10.18 21:35:30 1: ./log/fhem.save: Usage: setstate <name> <state>
where <name> is a single device name, a list separated by komma (,) or a regexp. See the devspec section in the commandref.html for details.

Es wäre schön, wenn sich dem Problem jemand annehmen könnte. Alternativ (als workaround) würde mir auch die Info reichen, wo ich das SSH-PW hinterlegen kann. Den User kann ich ja als Attribut mit übergeben.

LG
John

« Letzte Änderung: 18 Oktober 2016, 21:44:30 von JohnDenver0815 »
there is no place like 127.0.0.1

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
die fehler schaue ich mir an sobald ich dazu komme.

was stört dich an den beiden internals? das hat schon seine richtigkeit. eines ist ein start wert, das andere ein zähler.

wenn du die abfrage per mibs abschaltest werden die readings nicht gelöscht. das ist allgemein so in fhem. wende alte readings entfernen möchtest geht das über das deletereading kommando.

der ssh zugang ist auf public key ohne password ausgelegt. du kannst über das ssh_user attribut einstellen welcher user auf dem ziel system verwendet werden soll.

was meinst du es ging per telnet? das sysstat modul hat noch nie telnet verwendet.

wenn snmp verwendet wird, werden auch ein paar standard mibs abgefragt. das mache ich konfigurierbar.
die meldung zu state ist ein folgefehler wegen des leeren state readings. ich vermute mal deine pdu liefert keine cpu auslastung :)

gruss
  andre

FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline JohnDenver0815

  • New Member
  • *
  • Beiträge: 8
@Internals: meine Vermutung war, dass es hier irgendwo zum mismatch kommt (Stichwort CaseSensitive). Aber wenn das so seine Richtigkeit hat, dann ist alles gut.

@Readings löschen: me->Kopf->Tisch. Danke für den Hinweis ;-)

@Telnet: Hätte vermutet, dass es über telnet (manuell) aktualisiert wird, sobald noSSH gesetzt ist. Das erklärt dann auch, warum hier garnichts mehr passiert ist.

@CPU-Auslastung: Habe ich in den MIBs nichts gefunden. Von meinem Verständnis her dürfte da auch nicht wirklich was anfallen, da lediglich der Webserver im IDLE hängt und ab und an ein Relais geschalten wird.

In diesem Sinne erstmal Danke für die rasche Reaktion und Auflösung der Fragezeichen. Ich werd das dann nochmal per SSH probieren und schauen, ob dann noch was auffällt.

LG und guats nächtle
John
there is no place like 127.0.0.1

Offline JohnDenver0815

  • New Member
  • *
  • Beiträge: 8
Nach einer haarsträubenden Nacht gebe ich es hiermit auf. SSH ist auf der AP7921 zwar möglich, aber login per Public/Private-Keys scheinbar nicht. Wenn jemand andere Erfahrungen hat, ich bin für Tipps offen.

Edit: Mit dem originalen SYSSTAT funktionieren die Abfragen auch ohne Angabe von ssh_user per SNMP. Das sollte für meine Zwecke erstmal reichen. Um das "blockierend" zu umgehen wird mir auch noch was einfallen. Bisher war die PDU aber immer erreichbar, daher für mich für's Erste uninteressant.

LG
John
« Letzte Änderung: 19 Oktober 2016, 10:02:03 von JohnDenver0815 »
there is no place like 127.0.0.1

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
ssh brauchst du doch garnicht. du willst doch nur per snmp etwas abfragen. no noSSH zu setzen ist also völlig ok.

ich schaue mir die probleme noch an sobald ich dazu komme, bis dahin kannst du die normale version verwenden. alles andre ans dem anderen post gilt ja trotzdem.

vielleicht kannst do noch mal ein list des normalen sysstat devices zeigen.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline JohnDenver0815

  • New Member
  • *
  • Beiträge: 8
Mein Problem war, dass im "Custom"-SYSSTAT mit dem Attribut noSSH auch keine (automatische) Aktualisierung mehr stattgefunden hat, lediglich nach manuellem GET Update. Ohne noSSH wurde alle 5 Sekunden ein Verbindungsaufbau eingeleitet und wieder abgebrochen (logisch, ohne Public-Key) und das Logfile aufgebläht.

Anbei mein <list> des normalen SYSSTAT-Device:
Internals:
   DEF        60 600 [IP-ADDR]
   HAS_Net::SNMP 1
   HAS_Sys::Statistics 0
   HOST       [IP-ADDR]
   INTERVAL   60
   INTERVAL_FS 600
   NAME       WHG_AZ_PowSW_State
   NR         24
   STATE      Initialized
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 120
   snmpCommunity [COMMUNITY]
   snmpVersion 1
   Readings:
     2016-10-19 11:42:39   Port01_name     Schaukasten
     2016-10-19 11:42:39   Port01_state    1
     2016-10-19 11:42:39   Port02_name     Anlage
     2016-10-19 11:42:39   Port02_state    1
     2016-10-19 11:42:39   Port03_name     Monitor rechts
     2016-10-19 11:42:39   Port03_state    1
     2016-10-19 11:42:39   Port04_name     USB 3.0 Hub
     2016-10-19 11:42:39   Port04_state    1
     2016-10-19 11:42:39   Port05_name     Drucker
     2016-10-19 11:42:39   Port05_state    2
     2016-10-19 11:42:39   Port06_name     Festplatte
     2016-10-19 11:42:39   Port06_state    2
     2016-10-19 11:42:39   Port07_name     Tischleiste
     2016-10-19 11:42:39   Port07_state    1
     2016-10-19 11:42:39   Port08_name     Monitor links
     2016-10-19 11:42:39   Port08_state    2
   filesystems:
Attributes:
   mibs       .1.3.6.1.4.1.318.1.1.4.4.2.1.3.1:Port01_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.1:Port01_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.2:Port02_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.2:Port02_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.3:Port03_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.3:Port03_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.4:Port04_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.4:Port04_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.5:Port05_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.5:Port05_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.6:Port06_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.6:Port06_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.7:Port07_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.7:Port07_name ,.1.3.6.1.4.1.318.1.1.4.4.2.1.3.8:Port08_state ,.1.3.6.1.4.1.318.1.1.12.3.5.1.1.2.8:Port08_name
   room       Arbeitszimmer
   snmp       1
   snmpCommunity [COMMUNITY]
   snmpVersion 1
there is no place like 127.0.0.1

Offline vbs

  • Hero Member
  • *****
  • Beiträge: 1527
Habe auch gerade mal das Modul aus dem ersten Post installiert und bei mir scheint es auch so zu sein, dass keine automatischen Updates funktionieren. Nur wenn ich es händisch anstoße per get update. Ich benutze kein SSH (hab nossh gesetzt) und möchte nur SNMP abfragen.

Sieht dann so aus:
Internals:
   DEF        120 600 ben
   HAS_Net::SNMP 1
   HOST       ben
   INTERVAL   120
   INTERVAL_FS 600
   NAME       fl_benStats
   NR         476
   NTFY_ORDER 50-fl_benStats
   STATE      CPU: 8.5 % (93.4 GB/47.2 GB/204.3 GB/5037.2 GB)
   SystemDescription Hardware: Intel64 Family 6 Model 58 Stepping 9 AT/AT COMPATIBLE - Software: Windows Version 6.3 (Build 14393 Multiprocessor Free)
   SystemName Ben
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 240
   Helper:
     Dblog:
       Loadavg:
         Bendblog:
           TIME       1479134688.63544
           VALUE      8.5
       Numprocesses:
         Bendblog:
           TIME       1479134013.96408
           VALUE      108
       Stormass1free:
         Bendblog:
           TIME       1479134013.96408
           VALUE      47.2
       Stormass1size:
         Bendblog:
           TIME       1479134013.96408
           VALUE      239.9
       Stormass2free:
         Bendblog:
           TIME       1479134013.96408
           VALUE      204.3
       Stormass3free:
         Bendblog:
           TIME       1479134013.96408
           VALUE      5037.2
       Storramfree:
         Bendblog:
           TIME       1479134688.63544
           VALUE      15.7
       Storramsize:
         Bendblog:
           TIME       1479134688.63544
           VALUE      29.4
       Storsystemfree:
         Bendblog:
           TIME       1479134688.63544
           VALUE      93.4
       Storsystemsize:
         Bendblog:
           TIME       1479134688.63544
           VALUE      119.5
   Readings:
     2016-11-14 15:28:31   connection      disconnected
     2016-11-14 15:44:48   load            0.34
     2016-11-14 15:44:48   loadAvg         8.5
     2016-11-14 15:44:48   numProcesses    108
     2016-11-14 15:44:48   state           13,6,6,9
     2016-11-14 15:33:33   storMass1Free   47.2
     2016-11-14 15:33:33   storMass1Size   239.9
     2016-11-14 15:33:33   storMass1Used   192.7
     2016-11-14 15:33:33   storMass2Free   204.3
     2016-11-14 15:04:03   storMass2Size   6001.0
     2016-11-14 15:04:03   storMass2Used   5796.7
     2016-11-14 15:33:33   storMass3Free   5037.2
     2016-11-13 23:34:03   storMass3Size   8001.4
     2016-11-13 23:34:03   storMass3Used   2964.2
     2016-11-14 15:44:48   storRamFree     15.7
     2016-11-14 15:44:48   storRamSize     29.4
     2016-11-14 15:44:48   storRamUsed     13.7
     2016-11-14 15:44:48   storSystemFree  93.4
     2016-11-14 15:44:48   storSystemSize  119.5
     2016-11-14 15:44:48   storSystemUsed  26.1
     2016-11-14 15:44:48   storageAllocUnits0 4096
     2016-11-14 15:44:48   storageAllocUnits1 4096
     2016-11-14 15:44:48   storageAllocUnits2 4096
     2016-11-14 15:44:48   storageAllocUnits3 4096
     2016-11-14 15:44:48   storageAllocUnits4 4096
     2016-11-14 15:44:48   storageAllocUnits5 65536
     2016-11-14 15:44:48   storageSize0    29176575
     2016-11-14 15:44:48   storageSize1    58574591
     2016-11-14 15:44:48   storageSize2    1465097471
     2016-11-14 15:44:48   storageSize3    1953473535
     2016-11-14 15:44:48   storageSize4    1465097471
     2016-11-14 15:44:48   storageSize5    448646
     2016-11-14 15:44:48   storageUsed0    6372492
     2016-11-14 15:44:48   storageUsed1    47038033
     2016-11-14 15:44:48   storageUsed2    1415221436
     2016-11-14 15:44:48   storageUsed3    723691231
     2016-11-14 15:44:48   storageUsed4    877375734
     2016-11-14 15:44:48   storageUsed5    209576
     2016-11-14 15:24:03   uptime          23 hours, 18:13.71
   Helper:
Attributes:
   alias      Ben - Status
   event-on-change-reading .*
   event-on-update-reading (stor.*Size|stor.*Free|stor.*Used)
   group      Server
   icon       time_graph
   mibs       .1.3.6.1.2.1.25.1.6.0:numProcesses ,.1.3.6.1.2.1.25.2.3.1.4.1:storageAllocUnits0 ,.1.3.6.1.2.1.25.2.3.1.4.2:storageAllocUnits1 ,.1.3.6.1.2.1.25.2.3.1.4.3:storageAllocUnits2 ,.1.3.6.1.2.1.25.2.3.1.4.4:storageAllocUnits3 ,.1.3.6.1.2.1.25.2.3.1.4.5:storageAllocUnits4 ,.1.3.6.1.2.1.25.2.3.1.4.6:storageAllocUnits5 ,.1.3.6.1.2.1.25.2.3.1.5.1:storageSize0 ,.1.3.6.1.2.1.25.2.3.1.5.2:storageSize1 ,.1.3.6.1.2.1.25.2.3.1.5.3:storageSize2 ,.1.3.6.1.2.1.25.2.3.1.5.4:storageSize3 ,.1.3.6.1.2.1.25.2.3.1.5.5:storageSize4 ,.1.3.6.1.2.1.25.2.3.1.5.6:storageSize5 ,.1.3.6.1.2.1.25.2.3.1.6.1:storageUsed0 ,.1.3.6.1.2.1.25.2.3.1.6.2:storageUsed1 ,.1.3.6.1.2.1.25.2.3.1.6.3:storageUsed2 ,.1.3.6.1.2.1.25.2.3.1.6.4:storageUsed3 ,.1.3.6.1.2.1.25.2.3.1.6.5:storageUsed4 ,.1.3.6.1.2.1.25.2.3.1.6.6:storageUsed5
   noSSH      1
   room       Flur
   snmp       1
   stateFormat CPU: loadAvg % (storSystemFree GB/storMass1Free GB/storMass2Free GB/storMass3Free GB)
   uptime     1
   userReadings loadAvg:load.* { ReadingsVal($name,"load",0) * 25 },storRamFree:storageUsed5.* { VBSUtils_SnmpGetStorageFree($name, 5)},storRamSize:storageUsed5.* { VBSUtils_SnmpGetStorageSize($name, 5)},storRamUsed:storageUsed5.* { VBSUtils_SnmpGetStorageUsed($name, 5)},storMass1Size:storageUsed1.* { VBSUtils_SnmpGetStorageSize($name, 1)},storMass1Used:storageUsed1.* { VBSUtils_SnmpGetStorageUsed($name, 1)},storMass1Free:storageUsed1.* { VBSUtils_SnmpGetStorageFree($name, 1)},storMass2Size:storageUsed2.* { VBSUtils_SnmpGetStorageSize($name, 2)},storMass2Used:storageUsed2.* { VBSUtils_SnmpGetStorageUsed($name, 2)},storMass2Free:storageUsed1.* { VBSUtils_SnmpGetStorageFree($name, 2)},storMass3Size:storageUsed3.* { VBSUtils_SnmpGetStorageSize($name, 3)},storMass3Used:storageUsed3.* { VBSUtils_SnmpGetStorageUsed($name, 3)},storMass3Free:storageUsed1.* { VBSUtils_SnmpGetStorageFree($name, 3)},storSystemSize:storageUsed0.* { VBSUtils_SnmpGetStorageSize($name, 0)},storSystemUsed:storageUsed0.* { VBSUtils_SnmpGetStorageUsed($name, 0)},storSystemFree:storageUsed0.* { VBSUtils_SnmpGetStorageFree($name, 0)}

Ich hab bisher immer die original Version benutzt, doch jetzt immer öfter das Problem gehabt, das SYSSTATS gelegentlich stark blockiert hat (>10 s). Normalerweise sollen sich meine HDDs schlafen legen und ich vermute, dass manchmal eine SNMP-Anfrage ein Aufwecken bewirkt und daher die Hänger. Ist das normal, dass SNMP-Anfragen die Festplatten wecken? Wäre für mich ja generell ein Problem, da die ja schlafen sollen. Das Aufwecken passiert aber offenbar auch nicht bei jeder Anfrage.

Offline alexus

  • Developer
  • Jr. Member
  • ****
  • Beiträge: 51
Hallo,

erstmal vielen Dank für dieses Modul. Da steckt viel Arbeit drin!
Ich habe allerdings noch eine spezielle Frage:

Ist es möglich, die SNMP-Abfragen komplett zu deaktivieren und den "Füllstand" der Festplatten manuell mit "get <name> update" abzufragen?
Hintergrund: Ich möchte die Volumes meiner alte Synology nur während der Sicherung überwachen, ansonsten werden die Festplatten immer wieder "aufgeweckt".

Viele Grüße
alexus

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
@JohnDenver0815 , vbs: das mit dem fehlenden update habe ich bei mir noch nicht beobachten können. sobald ich das problem gefunden habe checke ich die neue version ein.

@alexus: du kannst das snmp attrubut setzen und löschen oder das intervall für den platten check sehr sehr gross setzen.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline ulli

  • Full Member
  • ***
  • Beiträge: 444
Hallo,
ich wollte gerade meine DS212+ mit SYSSTAT in FHEM einbinden. Da ich diese auch herunterfahren können möchte muss ich über ssh gehen, soweit ich das verstanden habe?
Jetzt ist mir nur nicht klar wie ich über ssh Zugriff bekomme ohne das ich irgendwo das user passwort eingeben kann. Wie ist das gedacht?
Geschickt wäre natürlich wenn ich über ein SSH Zertifikat Zugriff bekomme.
Dazu müsste ich aber an das ssh Kommando die notwendigen Parameter anhängen können.
z.B. /usr/bin/ssh -i /opt/fhem/tools/id_rsa <user@host> <cmd>

Am Rande noch...kann ich über Sysstat auch ein WOL auslösen?
FHEM auf Beaglebone Black mit Debian.
1x Jeenode (433MHz): IR send/receive; Baumarkt Funksteckdosen HX2262 send/receive; LEDs
1x Jeenode (868MHz): FS20 send/receive; 2x Heizungsthermostate ETH200 comfort; 2x LaCrosse Temperatursensoren (send)/receive; Piezo Summer für akustische Rückmeldung

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
der user unter dem fhem läuft muss per ssh und ohne eingabe von user oder password zugriff auf das entfernte system bekommen. dazu ist nichts weiter anzuhängen sondern das .ssh verzeichniss passend zu nutzen.

d.h. normalerweise macht man das über das .ssh verzeichniss des fhem users (~/.ssh/id_rsa), dem ssh_user attribut und eintragen des keys auf der gegenseite in ~/.ssh/authorized_keys bei diesem user.

statt dem SYSSTAT modul kannst du auch das PRESENCE modul mit passend gesetzem powerCmd attribut verwenden um ein device per ssh runter zu fahren.

WOL kannst du über das WOL modul umsetzen (und ebenfalls über powerCmd in PRESENCE triggern).

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mischu860

  • New Member
  • *
  • Beiträge: 21
  • Berufstheoretiker mit zwei rechten händen
Hallo zusammen.

Ich habe soeben ein update von fhem gemacht und habe seither keine Aufzeichnung mehr mittels sysstat in meine Plots.

2016.11.22 19:11:32 1: PERL WARNING: Use of uninitialized value $freq in division (/) at ./FHEM/32_SYSSTAT.pm line 604.
2016.11.22 19:11:31 1: PERL WARNING: Use of uninitialized value $temp in division (/) at ./FHEM/32_SYSSTAT.pm line 578.
2016.11.22 19:11:30 1: PERL WARNING: Argument "/dev/.*" isn't numeric in sprintf at ./FHEM/32_SYSSTAT.pm line 292.
2016.11.22 19:11:30 1: PERL WARNING: Argument "/dev/md2" isn't numeric in sprintf at ./FHEM/32_SYSSTAT.pm line 292.
2016.11.22 19:11:30 1: PERL WARNING: Argument "/dev/md1" isn't numeric in sprintf at ./FHEM/32_SYSSTAT.pm line 292.
2016.11.22 19:11:30 1: PERL WARNING: Argument "/dev/md0" isn't numeric in sprintf at ./FHEM/32_SYSSTAT.pm line 292.

Ist da jemand das selbe bekannt? Ich habe nichts am rest geändert...

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Ist es eigentlich auch möglich mit Sysstat an den Ram Verbrauch eines per ssh abgefragten Remote Servers zu kommen?

Gruß Christian

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
@mischu860: an der eingecheckten version hat sich seit dem 18.01.2016 nichts geändert.

@mrbreil: über das readings und readingsFormat attribut kannst du dir das konfigurieren.
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Danke justme1968.

Also so richtig verstanden habe ich das mit den SNMP Dienst nicht verstanden.
Ich weiß jetzt das der total verbrauchte Ram diese "Nummer" hat: .1.3.6.1.4.1.2021.4.6.0  .
Erstellt habe ich folgendes Attribut attr sysstat_Breilnet mibs 1.3.6.1.4.1.2021.4.6.0:ram\
1.3.6.1.4.1.2021.4.5.0:ramtotal

Aber ich bekomme leider kein Reading.
Kannst du mir bitte einen Tip geben. Danke

Grüße Christian

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 191
Ich habe einen kleinen Wunsch.
Könnte man noch ein Attribut einbauen, welches den Timeout festlegt.
Ich habe einen PC der über ein VPN abgefragt werden soll. Leider wird dieser immer als disconnected angezeigt, obwohl ich als fhem user Verbindung zu ihm aufbauen kann. Der Verbindungsaufbau dauert aber manchmal recht lange, möchte ausschließen das es am festen Timeout liegt.

Gruß Christian 

Offline JoeALLb

  • Hero Member
  • *****
  • Beiträge: 1111
Aber ich bekomme leider kein Reading.

Hast Du das geschafft? Ich hänge hier gerade ebendalls, vielleicht, weil ich es nicht auf einem RPI nutze?
Ich würde es gerne ohne SSH, nur zum Abfragen von snmp nutzen. ...
FHEM-Server auf IntelAtom+Debian (12 Watt),
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Offline wolfram

  • Jr. Member
  • **
  • Beiträge: 88
Hallo,
ich würde gern mit dem sysstat meinen die Werte meines Mac abfragen

Ich kann mit mit dem User: morpheus ohne Passwort auf dem Mac anmelden - das funktioniert.
Definiert habe ich es so:

define sysstat_minime SYSSTAT 60 60 192.168.1.16
attr sysstat_minime room System,Technik,Wohnzimmer
attr sysstat_minime ssh_user morpheus

Ein list auf das Device bringt folgendes:

Internals:
   CHANGED
   DEF        60 60 192.168.1.16
   HAS_Net::SNMP 0
   HAS_Sys::Statistics 1
   HOST       192.168.1.16
   INTERVAL   60
   NAME       sysstat_minime
   NR         438
   STATE      Initialized
   TYPE       SYSSTAT
   interval_fs
   Readings:
   filesystems:
Attributes:
   room       System,Technik,Wohnzimmer
   ssh_user   morpheus

Leider komme ich über den Status "initialized" nicht hinweg. Kann mir vielleicht jemand auf die Sprünge helfen?
Vielen Dank und schöne Grüße
wolf
FHEM auf Raspi
VU+ Ultimo mit VTI Image - DVB-C 3x
Marantz NR1504 Receiver
Minimac 2011 mit Itunes

Offline kaihs

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 806
Ich habe gerade mal versucht die aktuelle Version aus dem ersten Post zu laden.
Das schlägt allerdings mit diesen Meldungen fehl:
Experimental push on scalar is now forbidden at ./FHEM/32_SYSSTAT.pm line 248, near "};"
Experimental shift on scalar is now forbidden at ./FHEM/32_SYSSTAT.pm line 328, near "};"
Not enough arguments for main::SYSSTAT_readFile at ./FHEM/32_SYSSTAT.pm line 1103, near "'/proc/loadavg')"
Not enough arguments for main::SYSSTAT_readCmd at ./FHEM/32_SYSSTAT.pm line 1111, near "'uptime')"
Not enough arguments for main::SYSSTAT_readFile at ./FHEM/32_SYSSTAT.pm line 1300, near "'/proc/uptime')"
Not enough arguments for main::SYSSTAT_readFile at ./FHEM/32_SYSSTAT.pm line 1352, near "'/proc/stat')"

perl --version

This is perl 5, version 24, subversion 1 (v5.24.1) built for arm-linux-gnueabihf-thread-multi-64int
(with 64 registered patches, see perl -V for more detail)
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, FHEM V5.8, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EMT7110, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, FHEMduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
@mrbreil: meinst du einen timeout für die snmp abfragen?

@wolfram: siehst du bei verbose 5 etwasim log?

@kaihs: ich habe die version im ersten post aktualisierter. damit sollten die beiden ersten meldungen weg sein.

hast du versucht die neue version mit reload zu laden? das geht leider nicht, die signaturen der beiden routinen hat sich geändert. du musst fhem neu starten.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline JoeALLb

  • Hero Member
  • *****
  • Beiträge: 1111
Ich bekomme immer folgende Felhermeldung, auch mit der neuen Version.
DEVICEStat: unanswered query in queue, reconnecting
nossh ist bei ir auf 1. Wenn ich das auf 0 setze, bekomme ich direkt vor der obigen Fehlermeldung diesen Eintrag
2016.12.23 15:36:36 2: DEVICEStat: starting: /usr/bin/ssh -q 192.168.X.X
Eigentlich möchte ich nur snmp-Mibs abfragen, das scheint es jedoch so nicht zu machen.
Weder bekomme ich einen Eintrag mit dem mibs-Attribut, noch mit dem Reading-Attribut-

Meine Config lautet:
defmod BU.NASStat SYSSTAT 1440 1440 192.168.X.X
attr BU.NASStat comment iso.3.6.1.2.1.9999.x.y.z.a.b:secRicardaZoom
attr BU.NASStat filesystems /dev/sda1
attr BU.NASStat mibs iso.3.6.1.2.1.9999.x.y.z.a.b:secRicardaZoom
attr BU.NASStat noSSH 1
attr BU.NASStat readings temperature:snmpwalk -c public -v 1 192.168.X.X iso.3.6.1.2.1.9999.x.y.z.a.b\
temperature2:snmpget -c public -v 1 192.168.X.X iso.3.6.1.2.1.9999.x.y.z.a.b | grep -oE ..$
attr BU.NASStat snmp 1
attr BU.NASStat snmpCommunity public
attr BU.NASStat snmpVersion 1
attr BU.NASStat userReadings tmp{\
\
return {qx(snmpget -v2c -cpublic 192.168.X.X iso.3.6.1.2.1.9999.x.y.z.a.b)};;\
}
attr BU.NASStat verbose 5

setstate BU.NASStat 2016-12-23 15:36:37 connection disconnected
FHEM-Server auf IntelAtom+Debian (12 Watt),
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

Offline wolfram

  • Jr. Member
  • **
  • Beiträge: 88
@justme: mit verbose = 5 ist alles was im logfile ankommt folgendes:
2016.12.23 19:28:01.924 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/32_SYSSTAT.pm line 466.
Ansonsten schweigt sich das log aus...
« Letzte Änderung: 23 Dezember 2016, 19:48:41 von wolfram »
FHEM auf Raspi
VU+ Ultimo mit VTI Image - DVB-C 3x
Marantz NR1504 Receiver
Minimac 2011 mit Itunes

Offline kaihs

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 806
@kaihs: ich habe die version im ersten post aktualisierter. damit sollten die beiden ersten meldungen weg sein.

Ich habe die Datei aus dem ersten Post verwendet, aber die beiden Fehler sind noch vorhanden:
Experimental push on scalar is now forbidden at ./FHEM/32_SYSSTAT.pm line 248, near "};"
Experimental shift on scalar is now forbidden at ./FHEM/32_SYSSTAT.pm line 328, near "};"
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, FHEM V5.8, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EMT7110, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, FHEMduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Offline justme1968

  • Developer
  • Hero Member
  • ****
  • Beiträge: 17002
@kaihs: sorry. ich hatte die falsche version hoch geladen. bitte versuch es noch mal.

die anderen posts muss ich mir noch anschauen.

gruss
  andre
FHEM5.4,DS1512+,2xCULv3,DS9490R,HMLAN,2xRasPi
CUL_HM:HM-LC-Bl1PBU-FM,HM-LC-Sw1PBU-FM,HM-SEC-MDIR,HM-SEC-RHS
HUEBridge,HUEDevice:LCT001,LLC001,LLC006,LWL001
OWDevice:DS1420,DS18B20,DS2406,DS2423
FS20:fs20as4,fs20bs,fs20di
AKCP:THS01,WS15
CUL_WS:S300TH

Offline kaihs

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 806
@kaihs: sorry. ich hatte die falsche version hoch geladen. bitte versuch es noch mal.

Mit der aktuellen Version sind die Fehler weg, danke.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, FHEM V5.8, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EMT7110, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, FHEMduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Offline kaihs

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 806
Jetzt gibt es noch eine Warnung:
PERL WARNING: Use of uninitialized value $ret in numeric le (<=) at ./FHEM/32_SYSSTAT.pm line 297.

Das überwachte Gerät ist aktuell nicht angeschaltet.

ich habe die Zeile mal in
    Log3 $name, 3, "$name: read: end of file reached while sysread" if(defined($ret) && $ret <= 0);
geändert.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, FHEM V5.8, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EMT7110, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, FHEMduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Offline Tueftler1983

  • Full Member
  • ***
  • Beiträge: 497
Hallo würde gerne auf meinem RPI3 auf dem auch FHEM läuft die CPU load und Temperatur anzeigen und loggen leider funktioniert nur Temperatur den load bekomme ich nicht angezeigt. Was mache ich falsch.

Online gloob

  • Hero Member
  • *****
  • Beiträge: 1504
Gibt es schon eine Idee, wann die aktuelle Version ins FHEM Repository übernommen wird und per Update kommt?
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

Offline Paul Guijt

  • Jr. Member
  • **
  • Beiträge: 79
Hallo André,

Ich habe mein Windows PC mit SYSSTAT eingebunden:

defmod PCPaul SYSSTAT 60 600 192.168.178.62
attr PCPaul filesystems 1,4
attr PCPaul snmp 1
attr PCPaul snmpCommunity public
attr PCPaul snmpVersion 2
attr PCPaul uptime 1
attr PCPaul verbose 4

setstate PCPaul 48,47
setstate PCPaul 2017-02-11 16:47:44 C:/ 597260185600
setstate PCPaul 2017-02-11 16:47:44 PhysicalMemory 4707123200
setstate PCPaul 2017-02-11 16:54:47 load 0.95
setstate PCPaul 2017-02-11 16:54:47 state 48,47
setstate PCPaul 2017-02-11 16:54:47 uptime 4 hours, 49:42.79

Der Log sagt jetzt:
WARNING: unsupported character in reading C:/ (not A-Za-z/\d_\.-), notify the SYSSTAT module maintainer.
Selbstverständlich tue ich was FHEM mir fragt.

Grüße,
Paul
RasPi 2B, CUL 433, Jens' FW, Berker, HomeMatic, KlikaanKlikuit, RFXtrx443, Squeezebox in die Niederlände

Offline Paul Guijt

  • Jr. Member
  • **
  • Beiträge: 79
Hallo,

Der Log sagt auch:

got empty result from snmp query Received noSuchName(2) error-status at error-index 1
Weißt jemand was das bedeutet?

Freundliche Grüße,
Paul
RasPi 2B, CUL 433, Jens' FW, Berker, HomeMatic, KlikaanKlikuit, RFXtrx443, Squeezebox in die Niederlände

Offline vbs

  • Hero Member
  • *****
  • Beiträge: 1527
Ziemlich sicher hat da FHEM per SNMP eine MIB angefragt, die der Server nicht kennt.

Offline Paul Guijt

  • Jr. Member
  • **
  • Beiträge: 79
Ah, danke, das vermutete ich schon.

Dann ist es vieleicht möglich SYSSTAT an zu passen, das er kein MIB anfragt wenn es kein 'attr mibs' gibt.
RasPi 2B, CUL 433, Jens' FW, Berker, HomeMatic, KlikaanKlikuit, RFXtrx443, Squeezebox in die Niederlände

Offline vbs

  • Hero Member
  • *****
  • Beiträge: 1527
Bin da jetzt kein Experte, aber ich glaub er fragt SNMP nur an wenn man das Attribut "snmp" explizit gesetzt hat?

Offline fini

  • Full Member
  • ***
  • Beiträge: 154
Hallo würde gerne auf meinem RPI3 auf dem auch FHEM läuft die CPU load und Temperatur anzeigen und loggen leider funktioniert nur Temperatur den load bekomme ich nicht angezeigt. Was mache ich falsch.

habe das gleiche Problem.
Würde auch gerne die Load anzeigen lassen ... aber wie?
Unter attr habe ich Load zur Auswahl nicht.

Offline wolfram

  • Jr. Member
  • **
  • Beiträge: 88
guten morgen,
ich würde das Thema gern noch einmal hochholen. @justme - hast Du noch eine Idee, was ich machen könnte?
....wahrscheinlich auf snmp umstellen??  ;)

@justme: mit verbose = 5 ist alles was im logfile ankommt folgendes:
2016.12.23 19:28:01.924 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/32_SYSSTAT.pm line 466.
Ansonsten schweigt sich das log aus...
FHEM auf Raspi
VU+ Ultimo mit VTI Image - DVB-C 3x
Marantz NR1504 Receiver
Minimac 2011 mit Itunes

Offline docb

  • Full Member
  • ***
  • Beiträge: 452
Moin zusammen!

@Tüftler und fini: habt ihr die Version aus dem ersten Beitrag hier genommen, oder die, die Euch fhem über update liefert? Bei mir hat es nämlich mit der offiziellen Version auch nicht geklappt - nur mit der aus dem ersten Post hier bekomme ich die Werte geliefert.

@all: was bei mir aber auch nicht funktioniert, ist get Raspi filesystems - da passiert bei mir gar nichts. Entsprechend habe ich auch kein Reading Mountpoint (obwohl die richtige Platte     
/dev/mmcblk0p1 bei Filesystems manuell eingetragen wurde), ebenso fehlen bei mir user, system, idle, iowait. Aber immerhin load, state, cpufreq, temperature und uptime laufen ;-)
Vielleicht kann mir dafür ja jemand noch einen Tipp geben.

@justme1968: erstmal herzlichen Dank für das geniale Modul! Wäre super, wenn es möglich wäre, die aktuellste Version ins offizielle FHEM-Verzeichnis aufzunehmen, sonst ist die hier manuell geladene bei einem update force wieder weg und wird von der "alten" Version überschrieben, oder?

Schönes Wochenende und viel Spaß beim Tüfteln ;-)
doc


I love FHEM!

Offline vbs

  • Hero Member
  • *****
  • Beiträge: 1527
@justme1968: erstmal herzlichen Dank für das geniale Modul! Wäre super, wenn es möglich wäre, die aktuellste Version ins offizielle FHEM-Verzeichnis aufzunehmen, sonst ist die hier manuell geladene bei einem update force wieder weg und wird von der "alten" Version überschrieben, oder?
Kannst du mit dem globalen Attribut "exclude_from_update" verhindern. Warum machst du ein "force"?

Offline docb

  • Full Member
  • ***
  • Beiträge: 452
Das mit dem Force mache ich nicht oft, aber manchmal, wenn ich es mit dem Basteln übertrieben habe und ich zu viel rumgepfuscht habe, hilft das ;-)
Danke für den Tipp diesbezüglich!

@Tüftler und fini: ich habe jetzt auch noch
apt-get install libsys-statistics-linux-perlinstalliert, das habe ich als Tipp noch rausgegoogelt.
Ich kann zwar damit immer noch nicht  user, system, idle, iowait auslesen bzw. ein get Raspi filesystems bleibt erfolglos, aber der Rest funktioniert zumindest weiterhin ;-)
Wenn also das Einbinden des Moduls aus dem ersten Post hier nicht hilft, dann vielleicht das.

Viele Grüße
I love FHEM!

Offline suchmich1983

  • New Member
  • *
  • Beiträge: 9
Hi,

wahrscheinlich werd ich gleich ausgelacht, aber kann mir jemand mal erklären, wie ich dieses .pm File nun korrekt installiere?
Zur Config via "Edit Files" vermutlich?!? Und wie gehts dann weiter? Fehlt vorher noch irgendwas?

Danke und Grüße
Christian

EDIT:
Hat sich erledigt. Habe SysStat zum Laufen bekommen!
Das ist teilweise so einfach, dass ich nicht glaube wie einfach :D
« Letzte Änderung: 31 Mai 2017, 18:37:48 von suchmich1983 »

Offline TWART016

  • Sr. Member
  • ****
  • Beiträge: 619
Hallo,

ich bin gerade das Modul mit meinem ESXi einzurichten. SNMP auf dem VMWare Host ist aktiviert. Vom der Ubuntu Konsole bekomme ich auch mit snmpwalk jede Menge Werte zurück. Jedoch wird im Modul nichts angezeigt.

2017.06.16 22:19:39 4: ESXi: got empty result from snmp query The OBJECT IDENTIFIER value ".3.6.1.2.1.2.2.1.2.3" must begin with either 0 (ccitt), 1 (iso), or 2 (joint-iso-ccitt)
2017.06.16 22:19:39 4: ESXi: got empty result from snmp query Received noSuchName(2) error-status at error-index 1
2017.06.16 22:19:37 4: ESXi: got empty result from snmp query The OBJECT IDENTIFIER value ".3.6.1.2.1.2.2.1.2.3" must begin with either 0 (ccitt), 1 (iso), or 2 (joint-iso-ccitt)
2017.06.16 22:19:37 4: ESXi: got empty result from snmp query Received noSuchName(2) error-status at error-index 1

Internals:
   DEF        60 600 192.168.178.10
   HAS_Net::SNMP 1
   HAS_Sys::Statistics 0
   HOST       192.168.178.10
   INTERVAL   60
   INTERVAL_FS 600
   NAME       ESXi
   NR         565
   STATE      1,2,3,2
   TYPE       SYSSTAT
   USE_SNMP   1
   interval_fs 420
   snmpCommunity string
   snmpVersion 2
   Readings:
     2017-06-16 22:29:14   load            0.08
     2017-06-16 22:29:14   state           1,2,3,2
     2017-06-16 22:29:14   uptime          166 days, 16:32:46.00
   filesystems:
Attributes:
   mibs       iso.3.6.1.2.1.2.2.1.2.3:Switch
   room       Wohnzimmer
   snmp       1
   snmpCommunity string
   snmpVersion 2
   uptime     1

Hier noch ein kleiner Ausschnitt des snmpwalk
iso.3.6.1.2.1.2.2.1.2.2 = STRING: "Traditional Virtual VMware switch: vSwitch0"
iso.3.6.1.2.1.2.2.1.2.3 = STRING: "Virtual interface: vmk0 on vswitch vSwitch0 portgroup: Management Network"
iso.3.6.1.2.1.2.2.1.3.1 = INTEGER: 6
iso.3.6.1.2.1.2.2.1.3.2 = INTEGER: 54
iso.3.6.1.2.1.2.2.1.3.3 = INTEGER: 258
iso.3.6.1.2.1.2.2.1.4.1 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.4.2 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.4.3 = INTEGER: 1500
iso.3.6.1.2.1.2.2.1.5.1 = Gauge32: 1000000000
iso.3.6.1.2.1.2.2.1.5.2 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.5.3 = Gauge32: 0
iso.3.6.1.2.1.2.2.1.6.1 = Hex-STRING: B8 AE ED 7E 93 81
iso.3.6.1.2.1.2.2.1.6.2 = Hex-STRING: B8 AE ED 7E 93 81
iso.3.6.1.2.1.2.2.1.6.3 = Hex-STRING: B8 AE ED 7E 93 81
iso.3.6.1.2.1.2.2.1.7.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.7.2 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.7.3 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.2 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.8.3 = INTEGER: 1

Diese MIB habe ich von snmpwalk ausgelesen. Leider finde ich keine Übersetzung der Liste. Weiß einer wo ich die zu VMWare ESXi finden kann? Ich möchte z.B: die CPU, RAM, Bandbreite, ... überwachen.


Gruß
TWART016
Intel NUC, Raspberry Pi,CUL 433+868, JeeLink, Uniroll, LD382/LD686 + WifiLight, Eventghost, Tablet UI, Homekit/Homebridge/Siri, Alexa, Squeezebox, Onkyo, MAX, Harmony, KODI, Winconnect, Geofancy, Nmap, Sysmon, Telegram

Offline eisler

  • Developer
  • Full Member
  • ****
  • Beiträge: 165
    • Hausautomatisierung.co
Hallo,

ist es möglich wenn ich keine "load" habe SYSSTAT trotzdem für SNMP Readings zu verwenden. Gibt es eine SNMP alternative zu SYSSTAT?

Grüße
Stephan


defmod sysstat SYSSTAT 60 600 192.168.1.102
attr sysstat mibs .1.3.6.1.4.1.37954.2.1.1.1.0:temperatureValue , .1.3.6.1.4.1.37954.2.1.1.2.0:temperatureMin ,  .1.3.6.1.4.1.37954.2.1.2.1.0:humidityValue , .1.3.6.1.4.1.37954.2.1.3.1.0:dewpointValue , .1.3.6.1.4.1.37954.2.1.4.1.0:coValue , .1.3.6.1.4.1.37954.2.1.5.1.0:motionValue , .1.3.6.1.4.1.37954.2.1.12.1.0:vibrationValue
attr sysstat snmp 1
attr sysstat snmpCommunity public
attr sysstat snmpVersion 2

setstate sysstat noSuchObject noSuchObject noSuchObject
setstate sysstat 2017-08-22 08:41:14 coValue 0
setstate sysstat 2017-08-22 08:41:14 dewpointValue 101
setstate sysstat 2017-08-22 08:41:14 humidityValue 499
setstate sysstat 2017-08-22 08:41:14 load noSuchObject
setstate sysstat 2017-08-22 08:41:14 motionValue 0
setstate sysstat 2017-08-22 08:41:14 state noSuchObject noSuchObject noSuchObject
setstate sysstat 2017-08-22 08:41:14 temperatureMin 13
setstate sysstat 2017-08-22 08:41:14 temperatureValue 210
setstate sysstat 2017-08-22 08:41:14 vibrationValue 0


Offline DarkT

  • New Member
  • *
  • Beiträge: 43
Keine Infos
« Antwort #84 am: 23 November 2017, 13:34:20 »
Hallo zusammen,

ich würde gerne per SYSTAT meinen raspi (auf dem FHEM) installiert ist überwachen.
Ich habe das Tool eingerichtet wie unter: https://wiki.fhem.de/wiki/SYSSTAT beschrieben.

Allerdings bleibt das konfigurierte Log-File leer.

Was habe ich vergessen?


Habe es mit SYSMON gelöst.
« Letzte Änderung: 24 November 2017, 15:57:28 von DarkT »