SNMP-Traps empfangen / Problem mit String

  • Hallo,

    ich habe mir ein Script gebaut, dass SNMP-Traps, welche von einem Server gesendet werden liest.
    Das funktioniert auch, nur es werden Binarys übergeben, die ich dann mittels BinaryToString umwandle.

    Das Resultat ist zB.:

    0‰ public¤| +‚‰P @ C 0`0 TESTSERVER - PING0 Fehler / Rot03 .TESTSERVER.domain.de [192.168.2.5]
    0‰ public¤| +‚‰P @ C 0`0 TESTSERVER - PING0 Fehler / Rot03 .TESTSERVER.domain.de [192.168.2.5]
    0† public¤y +‚‰P @ C 0]0 TESTSERVER2 - SQL0 OK / Grün03 .TESTSERVER2.domain.de [192.168.2.7]
    0‰ public¤| +‚‰P @ C 0`0 TESTSERVER2 - SQL+‚ Fehler / Rot03 .TESTSERVER2.domain.de [192.168.2.7]
    0† public¤y +‚‰P @ C 0]0 SRVTEST - VERZEICHNIS¤| OK / Grün03 .SRVTEST.domain.de [192.168.2.3]
    0‰ public¤| +‚‰P @ C 0`0 SRVTEST - VERZEICHNIS0 Fehler / Rot03 .SRVTEST.domain.de [192.168.2.3]


    Ich tu mich leider etwas schwer die Daten, die ich benötige rauszufiltern.

    Die Tabelle sollte dann wie folgt aussehen:

    TESTSERVER - PING | Fehler
    TESTSERVER - PING | Fehler
    TESTSERVER2 - SQL | OK
    TESTSERVER2 - SQL | Fehler
    SRVTEST - VERZEICHNIS | OK
    SRVTEST - VERZEICHNIS | Fehler

  • Ob die Beispiele repräsentativ sind weiß ich nicht - so funktioniert es zumindestens für die Beispiele:

    AutoIt
    Global $s_String = "0‰ public¤| +‚‰P @ C 0`0 SRVTEST - VERZEICHNIS0 Fehler / Rot03 .SRVTEST.domain.de [192.168.2.3]"
    
    
    $s_Result = StringTrimLeft(StringLeft($s_String, StringInStr($s_String, "/", 1)-2), 26)
    
    
    ConsoleWrite($s_Result & @CRLF)
  • Hi,

    danke für die Antwort, leider haut das nicht hin, weil vor und nach dem String den ich benötige völlig unterschiedliche Sachen stehen, einige wurden beim Einfügen hier nicht übernommen (Sonderzeichen)
    - ich denke das wird sicher auch mit RegEx schwierig.
    Ich habe jetzt aber einen Workaround gefunden... ich weiß welche Werte gesendet werden, also "SRVTest - Verzeichnis" müsste dann nur noch aus dem SNMP-Trap auslesen ob Fehler oder OK...