Ich versuche gerade ein Python Script zu schreiben, welches mir alle wichtigen Daten über mein Netzwerk sammelt und in eine SQL Datenbank schreibt. Dazu ist auch nötig zu erfahren um welche Art von Gerät es sich handelt (Windows oder Linux Client, Drucker, USV, usw... ) damit Nagios die entsprechenden von mir geschriebenen Plugins auf die Hosts anwenden kann. Dazu starte ich einzelne SNMP Abfragen über das Python Modul pysnmp, um den Typ des Gerätes zu bestimmen und direkt in die DB eintragen zu können, wie zum Beispiel für die Gerätebeschreibung:
Code: Alles auswählen
errorIndication, errorStatus, errorIndex, varbindtablesysdesc = cmdgen.CommandGenerator().bulkCmd(cmdgen.CommunityData('my-agent', 'public', 1),cmdgen.UdpTransportTarget((ip, 161)),0,20,(1,3,6,1,2,1,1,1))
Das Problem ist nur, dass der SNMP Dienst noch nicht auf allen Windows Maschinen im Netzwerk aktiviert ist, sodass die Ausführung der Abfrage bei entsprechenden Geräten extrem lange dauern kann, bevor ein timeout auftritt und das Script weiterläuft.
Gibt es eine Möglichkeit, dies zu umgehen bzw. eine andere Methode der Abfrage ?