NEWS
Adapter SNMP V2.x.x Support Thread
-
@mcm57 Habe heute den SNMP Adapter upgedatet und jetzt habe ich gesehen das er nicht mehr startet. Auch bei manuellem Start stoppt er gerade wieder.
Im Log:
2022-08-30 21:05:38.903 - info: host.Iobroker "system.adapter.snmp.0" enabled 2022-08-30 21:05:39.020 - info: host.Iobroker instance system.adapter.snmp.0 started with pid 1798235 2022-08-30 21:05:39.756 - info: snmp.0 (1798235) starting. Version 2.1.7 in /opt/iobroker/node_modules/iobroker.snmp, node: v16.17.0, js-controller: 4.0.23 2022-08-30 21:05:39.825 - error: snmp.0 (1798235) device 127_0_0_1 (127.0.0.1) references unknown or completly inactive oid group set-1. Please correct configuration. 2022-08-30 21:05:39.826 - error: snmp.0 (1798235) invalid config, cannot continue 2022-08-30 21:05:39.837 - info: host.Iobroker "system.adapter.snmp.0" disabled 2022-08-30 21:05:39.837 - info: host.Iobroker stopInstance system.adapter.snmp.0 (force=false, process=true) 2022-08-30 21:05:39.839 - info: host.Iobroker stopInstance system.adapter.snmp.0 send kill signal 2022-08-30 21:05:39.840 - info: snmp.0 (1798235) Got terminate signal TERMINATE_YOURSELF 2022-08-30 21:05:39.841 - info: snmp.0 (1798235) terminating 2022-08-30 21:05:39.841 - info: snmp.0 (1798235) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason 2022-08-30 21:05:40.382 - info: host.Iobroker instance system.adapter.snmp.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
-
@stefu87_ch said in Adapter SNMP V2.x.x Support Thread:
error: snmp.0 (1798235) device 127_0_0_1 (127.0.0.1) references unknown or completly inactive oid group set-1. Please correct configuration.
Obige Zeile ist die relevante Fehlermeldung.
Du hast in deiner Konfiguration ein Device (Tab Devices) mit der IP 127.0.0.1. Dieses referenziert eine OID Gruppe (set-1). Am Tab OIDs existiert entweder keine OID mit dieser Gruppe (set-1) oder alle OIDs die dieser Gruppe zugeordnet sind sind disabled.
Abhilfe:
Entferne den Enabled Marker (erste Spalte) am Tab Devices bei diesem Gerät, d.h. disable das Gerät 127.0.0.1.McM
P.S. Ich glaub mich zu erinnern, dass 127.0.0.1 ein disabled Defaulteintrag der v1.0.0 war. Solltest du also nichts via IP 127.0.0.1 (d.h. am ioBroker Host) überwachen wollen, dann kannst du das Device auch löschen.
-
gelöscht
-
@mcm57 sagte in Adapter SNMP V2.x.x Support Thread:
Abhilfe:
Entferne den Enabled Marker (erste Spalte) am Tab Devices bei diesem Gerät, d.h. disable das Gerät 127.0.0.1.Das war die Lösung. Jetzt startet der Adapter wieder von alleine.
-
@stefu87_ch
Ich hab einen Issue erstellt, dass der Adapter das in einer neueren Version ev. selbst erledigt.
(https://github.com/iobroker-community-adapters/ioBroker.snmp/issues/155).Sorry für die Unannehmlichkeiten beim Umstieg
-
Thema Subtree:
Ist es denn schon möglich eine OID eines Subtrees hinzuzufügen oder müssen alle OIDs innerhalb dieses Subtrees manuell hinzugefügt werden ?
Grüße -
@djmarc75
Derzeit muss jede abzufragende OID einzeln eingetragen werden. Allerdings kann mit V2.x.x eine OID Gruppe für mehrere Geräte verwendet werden (z.B. wenn z.B. mehr als ein nahezu identes NAS, Switch, ...) abgefragt werden soll.Falls hier eine Erweiterung gewunschen ist, bitte einen Issue auf github erstellen.
Je nach Bedarf (Feedback in Github bzw. hier) und notwendigem Aufwand werde ich die Umsetzung einplanen. Ich möchte bzw. kann aber nichts zusagen. Prinzipiell würde ich diesen Wunsch als berechtigt sehen - aber ich kann derzeit den Aufwand nicht abschätzen.Schöne Grüße
Martin -
@mcm57 Vielen Dank für die schnelle Antwort. Ich werde die Tage ein Issue auf Git anlegen.
Im Moment habe ich natürlich jede OID des jeweiligen Subtrees eingetragen.
Adapter läuft erstaunlich gut -
@djmarc75
Danke für das positive Feedback.Der Dank gebührt aber auch den über 100 Testern die bereit waren den Adapter vom Lastest-Repo zu installieren und bei denen einige Fehler der 2.x.x noch aufgetreten sind die hoffentlich nun behoben sind.
Martin
-
Zwei Rundfragen:
Benutzt jemand von euch den snmp Adapter in folgender Konstellation - insbesondere unter DOCKER: ?Adapter version: V2.7.1
JS-Controller version: 4.0.23
Node version: V16.17.0
Operating system: docker, QNAPEs gibt ein Issue (noch mit sehr wenig Daten) dazu und ich würde gerne wissen, ob der Adapter unter Docker prinzipiell funktioniert - ich habe dazu keine Testöglichkeit).
https://github.com/iobroker-community-adapters/ioBroker.snmp/issues/163
Hat jemand von euch direkt von 0.5.0 auf 2.1.7 aktualisiert?
Da die Config sich zwischen 0.5.0 und 1.x.x nicht unterschieden hat sollte der Upgrade da kein Problem habe. Aber ... wer weiß das schon sicherDANKE für Feedback
-
Da @Pandia22 (- leider keine Ahnung o b bzw. unter welchem Namen er / sie hier im Forum aktiv ist -) ein Problem mit dem SNMP Adapter in V2.1.7 hat, möchte ich dieses hier nochmals breittreten:
Basis: https://github.com/iobroker-community-adapters/ioBroker.snmp/issues/163
Umgebung / Versionen:
Adapter version: V2.7.1
JS-Controller version: 4.0.23
Node version: V16.17.0
Operating system: docker, QNAPDas IOB-Master-System läuft als Docker auf dem QNAP NAS mit dem SNMP-Adapter der Version 2.1.7. Ein identisches IOB-Slave-System auf einem Raspberry Pi4. Der SNMP-Adapter auf dem Slave in der Version 0.5.0 läuft weiterhin ohne Probleme.
Der Adapter läuft dort in Version 2.1.7 nicht. Es kommt immer zu einem Timeout.
Wenn ich den Issue richtig lese / interpretiere dann ist der Adapter vor dem Upgrade in Version 0.5.0 einwandfrei gelaufen.
Mir fehlen im Moment Ideen. Falls wer eine hat - insbesondere in Bezug auf Docker / QNAP / Loopback auf das eigen QNAP) bitte melden. Detto falls eine ähnliche uMgebung bei jemand funktioniert / oder auch nicht funktioniert.
Ich Hoffe Pandia22 meldet sich hier damit er/sie ggF weitere Infos bereitstellen kann.
McM
-
@mcm57 Hi mcm57, vielen Dank für die Weiterleitung des Tickets. Ich habe heute alle mir bekannten Logs auf dem NAS und der Docker-Umgebung geprüft, ob es Unregelmäßigkeiten im SNMP-Umfeld oder des Adapters gibt. Leider ohne Erfolg.
Jetzt stehe ich auch auf dem Schlauch. Hat noch jemand eine Idee, was ich in der Umgebung noch testen kann?
Kann ich temporär ein Downgrade des Adapter auf die Version V0.5.0 durchführen. Wo stehen die Vorgängerversionen? (Pandia22 - Github)
-
@pandia
Das geht leider nur auf der Commandlinecd /opt/iobroker
npm i iobroker.snmp@0.5.0
iob upload snmpSollte dies erledigen
ACHTUNG:
-) Backup vorher nicht vergessen
-) Config wird NICHT hinuntermigriert - muss daher neu eingetippt werdenBitte - wenn es nicht zuviel Aufwand ist - teste noch vor dem Downgrade ob die 2.1.7 ein anderes Gerät erreichen kann.
Und noch eine Sicherheitsfrage:
Dein Master ioB im Docker hat VOR dem Upgrade (also mit 0.5.0) das QNAP abfragen können? Oder hat sich noch irgendwas geändert? Mein Netgear Switch prüft z.B. von welcher IP der SNMP Request kommt und antwortet einfach nicht, wenn die IP nicht passt. Detto wenn die communitiy nicht passt. -
@Pandia
Ich fasse hier mal weiter Infos aus dem Issue zusammen. Da hier ein größerer Kreis erreicht wird, erscheint es mir sinnvoll hier zu diskutueren:Zitate von Pandia:
Vor dem Upgrade lief der SNMP Adapter auf dem Master in der Version 0.5.0 stabil. Alle Daten wurde korrekt ausgelesen. Es wurden keine sonstigen Veränderungen, außer das Upgrade auf V2.1.7, am System vorgenommen. Die Netzwerkverbindung vom Docker zum QNAP kann ausgeschlossen werden, da diverse andere Adapter die gleiche Netzwerkverbindung benutzen. Der Fehler jedoch nur beim SNMP-Adapter auftritt.
Testbericht: Downgrade des Adapters auf dem Master (QNAP/Docker)
o SNMP-Adapter V2.1.7 gelöscht
o SNMP-Adapter V0.5.0 installiert
o neue SNMP-Instanz hinzugefügt
o qnap_systemCPUUsage OID .1.3.6.1.4.1.24681.1.2.1.0 community = private hinzugefügt und aktiviertErgebnis: Der Adapter (V.0.5.0) baut die Verbindung korrekt auf und liefert kontinuierlich Daten.
Testbericht: Upgrade des Adapters auf dem Slave (Pi4)
o Upgrade SNMP-Adapter von V0.5.0 auf V2.1.7
o qnap_systemCPUUsage OID .1.3.6.1.4.1.24681.1.2.1.0 community = private hinzugefügt und aktiviertErgebnis: Nach dem Upgrade auf die Version V2.1.7 kann die Verbindung auch auf diesem Geräte nicht aufgebaut werden. Das Verhalten ist identisch zum Master unter QNAP/Docker.
Fazit:
o QNAP/Docker kann als Fehlerquelle ausgeschlossen werden
o Fehler ist auf unterschiedlichen Systemen reproduzierbar
o Downgrade auf die Version V0.5.0 beseitigt den FehlerIdee:
o Vielleicht gibt es eine Abhängigkeit zur Note JS Version? Auf beiden Systemen ist Note JS V16.17.0 installiert.
Zitat von @micklafisch
Hallo,
ich reihe mich hier mal ein. Update einer funktionierenden V1.0.0 auf 2.1.7 gemacht und es funktioniert nicht mehr. Downgrade durchgeführt, geht wieder.Das System läuft bei mir auf einer Synology Docker Installation, Node.js: 16.15.1, NPM 8.11.0
ERGO
Ich würde es im MOment auch so sehen, dass das Problem mit dem Adapter zusammenhängt und nicht mit Docker & Co.@micklafisch :
Du schreibts nur "funktioniert nicht". Heißt das identes Fehlerbilde? Timeout im Debug Log oder gibts irgendwelche anderen Logeinträge? -
Habe nun einen Test mit node 16 gemacht - allerdings auf einem Windows 10 System.
node -v
v16.15.1Ergebnis: Alles läuft normal
Habe am Win10 System ( Spielwiesensystem) nun mal schnell node auf 16.17.0 gebracht.
node -v
v16.17.0Ergebnis: Alles läuft noch immer normal
-
Fragst du mit deiner SNMP Installation zufällig auch ein QNAP NAS ab?
Da dein Docker auf einer Synology läuft eher unwahrscheinlich - aber ich suche ein Muster warum 2 User auf 3 System mit unterschiedlicher Hardware ein Problem haben. Ich gehe davon aus, dass die ca 700 anderen User (lt. ioBroker Statistik) nicht stillschweigen würden wenn es dort auch auftritt.Das soll NICHT bedeuten dass ein Fehler bei euch existiert. Ich versuche nur zumindest eine Hypothese zu schaffen was da schief läuft ...
-
@mcm57
Hallo, unter Windows kein Problem:
Plattform: Windows
RAM: 16 GB
NODE.JS: V16.17.0
NPM: 8.11.0
JS Controller: 4.0.23
Admin: 6.2.21
SNMP: 2.1.7 -
Ich fürchte ich muss euch bitten - wenn ihr es zeitlich und technisch verantworten könnte - eine Ebene tiefer zu gehen.
Ich habe nun auf meinem Pi4 mittels tcpdump getestet ob Daten ausgetauscht werden.
Ich kann nur das Beispiel für den Pi4 bieten _ ev. kannst du(@Pandia) auf deinem das testen:a) Wenn tcpdump nicht installiert ist mittel apt installieren:
sudo apt install tcpdumpb) In einem Konsolenfenster tcpdump starten
sudo tcpdump -nni eth0 host <ipaddress of target> and port 161Bei mir sieht das dann so aus:
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode listening on eth0, link-type EN10MB (Ethernet), snapshot length 262144 bytes 20:08:50.596687 IP 10.17.2.20.42915 > 10.17.2.6.161: GetRequest(48) .1.3.6.1.4.1.6574.1.5.1.0 .1.3.6.1.4.1.6574.1.5.3.0 20:08:50.598380 IP 10.17.2.6.161 > 10.17.2.20.42915: GetResponse(68) .1.3.6.1.4.1.6574.1.5.1.0="DS1019+" .1.3.6.1.4.1.6574.1.5.3.0="DSM 6.2-25556" 20:09:43.929829 IP 10.17.2.20.56177 > 10.17.2.6.161: GetRequest(48) .1.3.6.1.4.1.6574.1.5.1.0 .1.3.6.1.4.1.6574.1.5.3.0 20:09:43.930993 IP 10.17.2.6.161 > 10.17.2.20.56177: GetResponse(68) .1.3.6.1.4.1.6574.1.5.1.0="DS1019+" .1.3.6.1.4.1.6574.1.5.3.0="DSM 6.2-25556" 20:09:58.920161 IP 10.17.2.20.56177 > 10.17.2.6.161: GetRequest(48) .1.3.6.1.4.1.6574.1.5.1.0 .1.3.6.1.4.1.6574.1.5.3.0 20:09:58.921019 IP 10.17.2.6.161 > 10.17.2.20.56177: GetResponse(68) .1.3.6.1.4.1.6574.1.5.1.0="DS1019+" .1.3.6.1.4.1.6574.1.5.3.0="DSM 6.2-25556"
Wie man sieht, wird da deutlich das gesendete Paket und die Antwort aufgezeichnet.
Wie das unter Docker geht kann ich nicht sagen, insbesondere weiß ich nicht wie dort die Interfaces heißen. Ev. tcpdump zuerst mit 0.5.0 testen damit sichergestellt wird, dass der Befehl auch was aufzeichnet.
Falls wer von euch tcpdump auf einem nicht funktionierenden System einsetzen könnte wär mir mal geholfen. Ziel wäre es zu testen:
- ob der Request rausgeht
- ob die Antwort kommt und nach welcher Zeit
Wenn die INfos da sind, kann man dann weiter überlegne wo das Ganze klemmen könnte.
DANKE für eure Hilfe
McM -
@Pandia
@micklafisch
@ ... zukünftige Geschädigte ...Es gib offensichtlich eine Bug im Migrationsbereich. Der Parameter COMMUNITY wird nicht migriert. Bitte checked den Eintrag am Devices Tab unter "Community (V1, V2c)". Ziemlich sicher steht dort public statt des auf euren Systemen benötigten Wertes.
Sorry
McMP.S. Bitte um Feedback wenn es das war.
-
@mcm57 said in Adapter SNMP V2.x.x Support Thread:
Es gib offensichtlich eine Bug im Migrationsbereich. Der Parameter COMMUNITY wird nicht migriert. Bitte checked den Eintrag am Devices Tab unter "Community (V1, V2c)". Ziemlich sicher steht dort public statt des auf euren Systemen benötigten Wertes.
Lt. Feedback im Isse (https://github.com/iobroker-community-adapters/ioBroker.snmp/issues/163) ist das Problem mit V1.2.8 behoben.
ACHTUNG: Wer schon auf V2.x.x ist muss den Community Parameter ggF selbst in der Config korrigieren. Die Migration schlägt nur bei einem Umstieg <2.0.0 auf >2.0.0 zu.