Unter Verwendung des pysnmp-Frameworks erhalte ich einige Werte für einen SNMP-Walk. Leider für die oid
1.3.6.1.21.69.1.5.8.1.2 (DOCS-CABLE-DEVICE-MIB)
Ich bekomme ein seltsames Ergebnis, das ich hier nicht richtig ausdrucken kann, da es Ascii-Zeichen wie BEL
ACK
Wenn ich einen Abdruck mache, bekomme ich:
Oktettstring ('\ x07 \ xd8 \ t \ x17 \ x03 \ x184 \ x00')
Aber die Ausgabe sollte wie folgt aussehen:
2008-9-23,3: 24: 52.0
Das Format heißt "DateAndTime". Wie kann ich die OctetString-Ausgabe in ein "für Menschen lesbares" Datum / Uhrzeit übersetzen?
Das Format ist hier .
%Vor%Sie können struct.unpack:
verwenden %Vor%@Paulo Scardine: Das war die beste Antwort, die ich online fand, als ich an der Lösung eines sehr ähnlichen Problems arbeitete. Es dauerte noch eine Weile, bis ich mein Problem selbst mit dieser Antwort lösen konnte. Daher wollte ich eine Antwort veröffentlichen, die mehr Klarheit bringen könnte. (speziell das Problem mit dem Datum mit unterschiedlichen Längenoptionen).
Der folgende Codeabschnitt stellt eine Verbindung zu einem Server her, erfasst die Systemzeit und gibt sie dann als Zeichenfolge aus, um die Methode zu veranschaulichen.
%Vor%Ich hoffe, dies hilft anderen Menschen, die ähnliche Probleme haben, mit dieser Art von Daten zu arbeiten.
Schamloser Stecker hier: Die Pycopia SNMP- und SMI-Module handhaben dieses und andere Objekte korrekt. Pycopia wird von der Quelle installiert, und vergessen Sie nicht mibs Datei wenn Sie es versuchen.