Autor Thema: Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP  (Gelesen 1729 mal)

Offline Andy89

  • Full Member
  • ***
  • Beiträge: 349
Guten Tag,
da ich meine FritzBox gegen ein Draytek Vigor 165 Modem getauscht habe und als Router mein Unifi Security Gateway(USG) nutze, wollte ich auch die Download und Uploud Raten plotten. Da das USG SNMP kann, werte ich das WAN0 aus, um an diese Daten zu kommen. Ich hab das Sysstat Modul so eingerichtet:
defmod TrafficUnifiWan SYSSTAT 30 600 192.168.2.1
attr TrafficUnifiWan DbLogInclude Downstream_MBits,Upstream_MBits,RX_GB_WAN,TX_GB_WAN,ifHCInOctets,ifHCOutOctets,EmpfangenHeute,GesendetHeute,GesendetMonat,EmpfangenMonat
attr TrafficUnifiWan mibs .1.3.6.1.2.1.1.5.0:name\
.1.3.6.1.2.1.2.2.1.2.2:desc\
.1.3.6.1.2.1.2.2.1.5.2:ifSpeed\
.1.3.6.1.2.1.2.2.1.10.2:ifInOctets\
.1.3.6.1.2.1.2.2.1.16.2:ifOutOctets\
.1.3.6.1.2.1.31.1.1.1.6.2:ifHCInOctets\
.1.3.6.1.2.1.31.1.1.1.10.2:ifHCOutOctets\
.1.3.6.1.2.1.4.20.1.1.2.243.73.69:wanIP
attr TrafficUnifiWan room Unifi
attr TrafficUnifiWan snmp 1
attr TrafficUnifiWan snmpCommunity unifi
attr TrafficUnifiWan snmpVersion 2
attr TrafficUnifiWan stat 1
attr TrafficUnifiWan stateFormat Heute: Empfangen EmpfangenHeute GB;; Gesendet GesendetHeute
attr TrafficUnifiWan uptime 1
attr TrafficUnifiWan userReadings Downstream_MBits differential {sprintf("%.3f", ReadingsVal("TrafficUnifiWan","ifHCInOctets","-1")/1024/1024*8)},\
Upstream_MBits differential {sprintf("%.3f", ReadingsVal("TrafficUnifiWan","ifHCOutOctets","-1")/1024/1024*8)},\
RX_GB_WAN {sprintf("%.4f", ReadingsVal("TrafficUnifiWan","ifHCInOctets","-1")/1024/1024/1024)},\
TX_GB_WAN {sprintf("%.4f", ReadingsVal("TrafficUnifiWan","ifHCOutOctets","-1")/1024/1024/1024)},\
GesendetHeute monotonic {sprintf("%.2f", ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0))},\
GesendetWoche monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0))},\
GesendetMonat monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0))},\
GesendetJahr  monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0))},\
GesendetTotal monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0))},\
\
EmpfangenHeute monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
EmpfangenWoche monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
EmpfangenMonat monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
EmpfangenJahr  monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
EmpfangenTotal monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
\
GesamtHeute monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0) + \
                        ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
GesamtWoche monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0) + \
                        ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
GesamtMonat monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0) + \
                        ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
GesamtJahr monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0) + \
                        ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))},\
GesamtTotal monotonic {sprintf("%.2f",  ReadingsVal("TrafficUnifiWan","TX_GB_WAN",0) + \
                        ReadingsVal("TrafficUnifiWan","RX_GB_WAN",0))}

Die Werte werden so auch ausgelesen, aber wenn ich FHEM neustarte, dann stoppt die Auswertung.
Wenn ich aber folgendes absetze:
attr TrafficUnifiWan snmp 1Dann werden die Werte direkt wieder korrekt empfangen - zumindest bis zum nächsten Neustart. Wieso ist das so?

Ich hoffe, dass mir jemand helfen kann.

Vielen Dank und beste Grüße
Andy

P.s.: ob die Umrechnung mit Differential in MBits korrekt ist, weiß ich nicht. Es kommen aber ungefähr ähnliche Werte wie beim USG raus.
FHEM 6.0 auf rPi4 docker (mit Alexa & Siri); dbLog, FTUI, Sonos, XiaomiMapCreator auf rPi4 docker;
raspimatic auf rPi3+ > diverse Aktoren und Sensoren;
LGW > (PCA301),EC3000,LaCrosse; MQTT2 > WLAN-Steckdosen,Xiaomi Map;
Harmony Hub;Sonos;Onkyo AVR;RGB WLAN Controller;Netatmo;Withings;Unifi;AMAD

Offline Andy89

  • Full Member
  • ***
  • Beiträge: 349
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #1 am: 16 April 2020, 11:21:32 »
um das Problem zu umgehen, setzte ich nun einfach minütlich das SNMP Attribut neu
defmod di_zz_TIME_EveryMinute DOIF ([ +:01]) (attr TrafficUnifiWan snmp 1)
das funktioniert erstmal...
FHEM 6.0 auf rPi4 docker (mit Alexa & Siri); dbLog, FTUI, Sonos, XiaomiMapCreator auf rPi4 docker;
raspimatic auf rPi3+ > diverse Aktoren und Sensoren;
LGW > (PCA301),EC3000,LaCrosse; MQTT2 > WLAN-Steckdosen,Xiaomi Map;
Harmony Hub;Sonos;Onkyo AVR;RGB WLAN Controller;Netatmo;Withings;Unifi;AMAD

Online Wernieman

  • Developer
  • Hero Member
  • ****
  • Beiträge: 6486
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #2 am: 16 April 2020, 11:22:59 »
Du kannst auch auf "Neustart" Trickern und es setzen ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Offline Gisbert

  • Hero Member
  • *****
  • Beiträge: 1926
  • Das Ziel ist das Ziel !
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #3 am: 19 April 2020, 21:34:54 »
Hallo Andy,

super Idee, die du umgesetzt hast.
Kann ich deine Definition copy/paste (bis auf die IP-Adresse) übernehmen?
Was bedeutet dieses Attribut, muss ich da was anpassen?
attr TrafficUnifiWan mibs .1.3.6.1.2.1.1.5.0:name\
.1.3.6.1.2.1.2.2.1.2.2:desc\
.1.3.6.1.2.1.2.2.1.5.2:ifSpeed\
.1.3.6.1.2.1.2.2.1.10.2:ifInOctets\
.1.3.6.1.2.1.2.2.1.16.2:ifOutOctets\
.1.3.6.1.2.1.31.1.1.1.6.2:ifHCInOctets\
.1.3.6.1.2.1.31.1.1.1.10.2:ifHCOutOctets\
.1.3.6.1.2.1.4.20.1.1.2.243.73.69:wanIP

Da du keine Fritzbox (anscheinend) hast, wie machst du die Telefonie, ohne Fritzbox, mit dem Draytek? Das würde mich interessieren, wenn ich gegen Jahresende einen neuen Internetvertrag aushandele.

Viele​ Grüße​ Gisbert​
Aktuelles Fhem auf HP ThinClient T610 | Debian10 | UniFi-Controller | Homematic, VCCU, HMUART | ESP8266, Platinen von Papa Romeo | Sonoff | 1-Wire-Temperatursensoren | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21RF

Offline Eisix

  • Sr. Member
  • ****
  • Beiträge: 889
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #4 am: 20 April 2020, 15:21:10 »
@Gisbert

die X.X.X.X auch mit deiner IP ersetzen.
.1.3.6.1.2.1.4.20.1.1.2.243.73.69:wanIP

.1.3.6.1.2.1.4.20.1.1.X.X.X.X:wanIP

Ich musste snmp Version 1 benutzen
attr TrafficUnifiWan snmpVersion 1

@Andy89

Danke wollte ich schon lange auch machen, aber das warten hat sich gelohnt  8)

Gruß
Eisix

Offline Andy89

  • Full Member
  • ***
  • Beiträge: 349
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #5 am: 20 April 2020, 17:24:37 »
Kann ich deine Definition copy/paste (bis auf die IP-Adresse) übernehmen?
Was bedeutet dieses Attribut, muss ich da was anpassen?
ich habe gar nicht gesehen, dass die öffentliche IP auch Teil der Mibs wird. Das bringt mir natürlich auch nichts, da sich meine IP öfter ändert.
Du kannst es so übernehmen, wenn du ein USG hast. Beim USG Pro sind die Mibs anders.

Wie ich schon schrieb, bin ich mir bei den userreadings nicht ganz sicher, aber die passen grob.

Da du keine Fritzbox (anscheinend) hast, wie machst du die Telefonie, ohne Fritzbox, mit dem Draytek? Das würde mich interessieren, wenn ich gegen Jahresende einen neuen Internetvertrag aushandele.
das mache ich ganz "einfach" - ich habe alle dazu erzogen, mich auf dem Handy anzurufen. Das habe ich sowieso meist griffbereit und ne Flat hab ich auch drin.
Das Haustelefon wurde in den letzten Jahren nur geladen und ich kann an zwei Händen abzählen, wie oft ich darauf angerufen wurde. Da kann ich dir leider nicht helfen.

Ich musste snmp Version 1 benutzen
attr TrafficUnifiWan snmpVersion 1
ich musste auf snmpVersion 2, weil ich glaube, dass ifHCInOctets und ifHCOutOctets dann nicht funktionierten (es könnte aber auch sein, dass es an dem Problem vom Auslesen lag).
Auf dem USG habe ich die aktuellste Version installiert.
FHEM 6.0 auf rPi4 docker (mit Alexa & Siri); dbLog, FTUI, Sonos, XiaomiMapCreator auf rPi4 docker;
raspimatic auf rPi3+ > diverse Aktoren und Sensoren;
LGW > (PCA301),EC3000,LaCrosse; MQTT2 > WLAN-Steckdosen,Xiaomi Map;
Harmony Hub;Sonos;Onkyo AVR;RGB WLAN Controller;Netatmo;Withings;Unifi;AMAD

Offline Eisix

  • Sr. Member
  • ****
  • Beiträge: 889
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #6 am: 20 April 2020, 17:52:57 »
Das ist dann auch bei switches und APs aktiv.
Da könnte man ein schönes Modul draus bauen das alles Mögliche mit snmp abdeckt oder gibts das schon?

Gruß
Eisix

Offline Gisbert

  • Hero Member
  • *****
  • Beiträge: 1926
  • Das Ziel ist das Ziel !
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #7 am: 20 April 2020, 18:05:27 »
Hallo Eisix,
hallo Andy,

ich bin nicht so firm bei Netzwerken, wie ihr es wohl seid, vielleicht stehe ich aber auch nur etwas zu fest auf'm Schlauch.
In der Definition gibt es 2 IP-Adressen:
defmod TrafficUnifiWan SYSSTAT 30 600 192.168.2.1
attr TrafficUnifiWan DbLogInclude Downstream_MBits,Upstream_MBits,RX_GB_WAN,TX_GB_WAN,ifHCInOctets,ifHCOutOctets,EmpfangenHeute,GesendetHeute,GesendetMonat,EmpfangenMonat
attr TrafficUnifiWan mibs .1.3.6.1.2.1.1.5.0:name\
.1.3.6.1.2.1.2.2.1.2.2:desc\
.1.3.6.1.2.1.2.2.1.5.2:ifSpeed\
.1.3.6.1.2.1.2.2.1.10.2:ifInOctets\
.1.3.6.1.2.1.2.2.1.16.2:ifOutOctets\
.1.3.6.1.2.1.31.1.1.1.6.2:ifHCInOctets\
.1.3.6.1.2.1.31.1.1.1.10.2:ifHCOutOctets\
.1.3.6.1.2.1.4.20.1.1.2.243.73.69:wanIP

192.168.2.1: ist das die IP-Adresse des USG-3?
2.243.73.69: was ist das für eine IP-Adresse, die des UniFi-Controllers oder des Modems, oder ...

Das dürfte bei mir zu Problemen führen: DbLogInclude, da ich Filelog benutze. Wie müsste das dann aussehen?

Viele​ Grüße​ Gisbert​
Aktuelles Fhem auf HP ThinClient T610 | Debian10 | UniFi-Controller | Homematic, VCCU, HMUART | ESP8266, Platinen von Papa Romeo | Sonoff | 1-Wire-Temperatursensoren | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21RF

Offline Eisix

  • Sr. Member
  • ****
  • Beiträge: 889
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #8 am: 20 April 2020, 18:59:35 »
192.168.2.1. Interne USG ip
Die andere ist die externe.
Einfach ein Filelog für TrafficUnifiWan definieren. Dort kannst du dann auch wieder über regex filtern wenn du möchtest.

Gruß
Eisix

Offline Gisbert

  • Hero Member
  • *****
  • Beiträge: 1926
  • Das Ziel ist das Ziel !
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #9 am: 20 April 2020, 20:04:54 »
192.168.2.1. Interne USG ip
Die andere ist die externe.
Einfach ein Filelog für TrafficUnifiWan definieren. Dort kannst du dann auch wieder über regex filtern wenn du möchtest.

Gruß
Eisix

Hallo Eisix,

vielen Dank für die Erklärung - das kann ich umsetzen.
Leider gibt es kein Attribut edit: mbis mibs, das ich auswählen könnte. Wie bekomme ich dieses Attribut, bzw. wo muss ich es definieren?

Viele​ Grüße​ Gisbert​
« Letzte Änderung: 20 April 2020, 20:43:43 von Gisbert »
Aktuelles Fhem auf HP ThinClient T610 | Debian10 | UniFi-Controller | Homematic, VCCU, HMUART | ESP8266, Platinen von Papa Romeo | Sonoff | 1-Wire-Temperatursensoren | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21RF

Offline Gisbert

  • Hero Member
  • *****
  • Beiträge: 1926
  • Das Ziel ist das Ziel !
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #10 am: 20 April 2020, 20:17:30 »
Hallo Eisix,

commandref gibt folgendes preis:
Zitat
If <host> is given it has to be accessible by ssh without the need for a password.
Wie habt ihr das gelöst? Ich kann mich per ssh nur mit Passwort anmelden.

Viele​ Grüße​ Gisbert​
Aktuelles Fhem auf HP ThinClient T610 | Debian10 | UniFi-Controller | Homematic, VCCU, HMUART | ESP8266, Platinen von Papa Romeo | Sonoff | 1-Wire-Temperatursensoren | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21RF

Online Wernieman

  • Developer
  • Hero Member
  • ****
  • Beiträge: 6486
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Offline Eisix

  • Sr. Member
  • ****
  • Beiträge: 889
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #12 am: 20 April 2020, 20:23:52 »

define FileLog_TrafficUnifiWan FileLog ./log/TrafficUnifiWan-%Y.log TrafficUnifiWan

Das attr mibs gibt es bei sysstat, kannst aber einfach den code von Andy in die Befehlszeile Kopieren.

Am controller musst du snmp aktivieren wie im screenshot.
Bei mir heißt die Community "public" bei Andy "unifi"

Gruß
Eisix

Offline Eisix

  • Sr. Member
  • ****
  • Beiträge: 889
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #13 am: 20 April 2020, 20:31:42 »
snmp ist ein eigener service der auf port 161 läuft. Dazu wird kein ssh benötigt. Snmp v1,2 gehen read dann ohne Authentifizierung. Write muss ich mal testen.

Gruß
Eisix

Offline Andy89

  • Full Member
  • ***
  • Beiträge: 349
Antw:Problem mit SYSSTAT beim Auslesen von Mibs Werten über SNMP
« Antwort #14 am: 20 April 2020, 20:41:05 »
snmp ist ein eigener service der auf port 161 läuft. Dazu wird kein ssh benötigt. Snmp v1,2 gehen read dann ohne Authentifizierung
kann ich so bestätigen. Mein Raspberry hat keinen SSH Zugang zum USG. Ich habe wie Eisix es gezeigt hat, im Controller SNMP v1,2 aktivert.

Beste Grüße
Andy
FHEM 6.0 auf rPi4 docker (mit Alexa & Siri); dbLog, FTUI, Sonos, XiaomiMapCreator auf rPi4 docker;
raspimatic auf rPi3+ > diverse Aktoren und Sensoren;
LGW > (PCA301),EC3000,LaCrosse; MQTT2 > WLAN-Steckdosen,Xiaomi Map;
Harmony Hub;Sonos;Onkyo AVR;RGB WLAN Controller;Netatmo;Withings;Unifi;AMAD