Konvertieren Sie die Snmp-Oktettzeichenfolge in ein lesbares Datumsformat

8

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

enthält

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?

    
Michael Lang 31.12.2010, 19:17
quelle

3 Antworten

15

Das Format ist hier .

%Vor%

Sie können struct.unpack:

verwenden %Vor%     
Paulo Scardine 31.12.2010, 19:50
quelle
3

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

    
swill 10.01.2012 19:47
quelle
2

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.

    
Keith 31.12.2010 21:54
quelle

Tags und Links