Windows Event Log Event IDs - was ist relevant und was nicht?



  • Die Event IDs im Windows Event Log sind ja gleich aufgebaut wie Windows Status Codes.
    D.h. die Bits 31 und 30 sind ein "Severity Code" (Success/Information/Warning/Error).
    Dann kommt ein "Customer Bit", und ein "Reserved Bit".
    Dann kommen 12 Bits "Facility Code" und zuletzt 16 Bits die einfach nur mit "Code" beschrieben sind.

    Frage: wenn ich nun bestimmte Events "erkennen" will, also z.B. Logon, Logoff, System Start/Shutdown etc., was muss ich dann alles vergleichen, und was sollte ich ignorieren?

    Speziell: muss/sollte ich den Facility-Code mit vergleichen?

    Ich finde dazu leider keine brauchbare Doku...


  • Mod

    Von was sprichst Du hier?

    HRESULT Definitionen stehen in der winerror.h
    Die Facility Codes etc und Kombinationen stehen alle in diesem Header direkt am Kopf.
    http://msdn.microsoft.com/en-us/library/ms819773.aspx



  • Nönö, nix HRESULT, Windows Status Codes. Aber egal 🙂

    Um was es mir geht sind die Werte, die in EVENTLOGRECORD::EventID stehen. Und die sind so aufgebaut:

    http://msdn.microsoft.com/en-us/library/aa363651(VS.85).aspx

    Und meine Frage ist: welche "Teile" von so einem EVENTLOGRECORD::EventID soll/darf ich vergleichen, wenn ich bestimmt Events erkennen will.

    Beispiel: der Windows Event Log Viewer zeit mir Code 7036 (0x1B7C) für einen "state change" bei einem Service an ("The ... service entered the ... state.").
    In EVENTLOGRECORD::EventID steht aber 1073748860 (0x40001B7C) drinnen, weil der "severity" Wert auf 1 (Informational) ist.

    Wenn ich also EVENTLOGRECORD::EventID einfach nur mit dem vergleiche, was mir der Windows Event Log Viewer anzeigt, funktioniert es nicht.

    Und nun weiss ich nicht welche Bits ich beim Vergleich alle ausmaskieren soll/muss, damit es "passt".


Anmelden zum Antworten