Neuerungen in der Ereignisablaufverfolgung

In diesem Abschnitt werden die neuen Features beschrieben, die der Ereignisablaufverfolgung für Windows in jeder Version hinzugefügt wurden.

Windows 10, Version 1709

ETW kann jetzt optional Binärdateien für alle Anbieter nachverfolgen, die für die Sitzung aktiviert sind. Die Nachverfolgung gilt rückwirkend für Anbieter, die vor dem Anruf aktiviert wurden, sowie für alle zukünftigen Anbieter, die für die Sitzung aktiviert sind. Sie können jetzt auch die derzeit konfigurierte maximale Anzahl von Systemprotokollgern abfragen, die vom Betriebssystem zulässig sind. Weitere Informationen finden Sie in den Werten " TraceProviderBinaryTracking " und " TraceMaxLoggersQuery " der TRACE_INFO_CLASS-Enumeration sowie zum Abrufen zusätzlicher Ereignisablaufverfolgungsdaten.

ETW kann jetzt Ereignisse basierend auf dem Ereignisnamen filtern. Sie können auch bestimmen, welche Ereignisse ihre Stapel erfasst haben. Weitere Informationen finden Sie unter EVENT_FILTER_TYPE_EVENT_NAME,EVENT_FILTER_TYPE_STACKWALK_NAMEundEVENT_FILTER_TYPE_STACKWALK_LEVEL_KW Werte der EVENT_FILTER_DESCRIPTOR Struktur sowie der zugeordneten EVENT_FILTER_EVENT_NAME und EVENT_FILTER_LEVEL_KW Strukturen.

Windows 10

TraceLogging-Builds auf ETW und bietet eine vereinfachte Möglichkeit zum Instrumentieren von Code für native, .NET- und WinRT-Entwickler. Mit der TraceLogging können Sie strukturierte Daten mit Ereignissen, Korrelieren von Ereignissen einschließen und keine separate XML-Manifestdatei für Instrumentierung benötigen.

Anbietereigenschaften wurden als Methode zum Anfügen weiterer Daten an eine einzelne Anbieterregistrierung hinzugefügt. Sie können für manifestbasierte oder TraceLogging-Anbieter verwendet werden. Dies umfasst derzeit unterstützung für das Hinzufügen eines Anbieternamens und/oder einer Anbietergruppe zu einer einzelnen Anbieterregistrierung. Anbietergruppen sind ein neues Feature, um mehreren ETW-Anbietern das Aggregat von der Gruppe zu ermöglichen, zu denen sie gehören.

Der regelmäßige Erfassungszustand ist eine Möglichkeit, aufzeichnungszustandsbenachrichtigungen zu ermöglichen, die regelmäßig an Anbieter gesendet werden. Wenn dies aktiviert ist, werden Benachrichtigungen nur an Anbieterregistrierungen gesendet, die zuvor an die aktuelle Sitzung aktiviert wurden. Jeder Anbieter kann eine eigene Antwort (falls vorhanden) auf eine Benachrichtigung definieren. Details zur Implementierung finden Sie unter TRACE_PERIODIC_CAPTURE_STATE_INFO.

Windows 8.1 und Windows Server 2012 R2

Die folgenden Features wurden der Ereignisablaufverfolgung auf Windows 8.1 und Windows Server 2012 R2 hinzugefügt.

Funktionen, die die Verwendung von Ereignisnutzlast, Bereich und Stapellauffiltern unterstützen, die von der EnableTraceEx2-Funktion und den ENABLE_TRACE_PARAMETERS - und EVENT_FILTER_DESCRIPTOR Strukturen zum Filtern auf bestimmte Bedingungen in einer Loggersitzung verwendet werden. Weitere Informationen finden Sie unter

Darüber hinaus finden Sie die umfangreiche überarbeitete Dokumentation für die EnableTraceEx2-Funktion und die ENABLE_TRACE_PARAMETERS und EVENT_FILTER_DESCRIPTOR Strukturen, die von diesen Features verwendet werden.

Eine Struktur, die ein Ereignisnutzlastfilter-Prädikat definiert, das beschreibt, wie sie in einem einzelnen Feld in einer Ablaufverfolgungssitzung filtern, die von der neuen TdhCreatePayloadFilter-Funktion und einer neuen Struktur verwendet wird, die von Ereignis-ID und Stapellauffiltern verwendet wird. Weitere Informationen finden Sie unter

Funktionen, die Informationen zu Ereignissen abrufen, die im Anbietermanifest vorhanden sind. Weitere Informationen finden Sie unter

Eine Struktur, die ein Array von Ereignissen in einem Anbietermanifest definiert, das von der neuen TdhEnumerateManifestProviderEvents-Funktion verwendet wird. Weitere Informationen finden Sie unter

Windows 8 und Windows Server 2012

Die folgenden Features wurden der Ereignisablaufverfolgung auf Windows 8 und Windows Server 2012 hinzugefügt.

Funktionen, die Vorgänge auf einem Registrierungsobjekt ausführen, Ereignisnutzlastanalyse bereitstellen, Ablaufverfolgungsanbieter-Browser, Abfrageereignisablaufverfolgungssitzungseinstellungen und verarbeiten eine reloggierte Ablaufverfolgungsdatei. Weitere Informationen finden Sie unter

Schnittstellen, die Informationen zum Relogger für den Ablaufverfolgungsprozess bereitstellen und wenn Ereignisse protokolliert werden, Zugriff auf Daten für ein bestimmtes Ereignis und Zugriff auf die Neuprotokollierungsfeatures, die die Manipulation von Ereignisablaufverfolgungsprotokolldateien (ETL) ermöglichen. Weitere Informationen finden Sie unter

Zusätzliche Aufzählungen, die von den neuen Funktionen und Schnittstellen verwendet werden. Weitere Informationen finden Sie unter

Windows 7 und Windows Server 2008 R2

Die folgenden Features wurden in dieser Version hinzugefügt:

  • Die Möglichkeit für Anbieter, Filter im Manifest zu definieren. In Windows Vista könnten Controller Filterdaten an den Anbieter übergeben. Das Layout der Filterdaten wurde jedoch nicht im Manifest definiert, sodass der Anbieter andere Mittel zum Bereitstellen der Filterdefinition für Controller verwenden muss. Mit dieser Version können Anbieter die Filterdefinition im Manifest definieren (siehe das Filterattribute des komplexen Anbietertyps ). Controller können dann die Funktion TdhEnumerateProviderFilters verwenden, um die Filterdefinition zu bestimmen. Anbieter, die Filter verwenden, sollten die EventWriteEx-Funktion verwenden, um das Ereignis zu schreiben.
  • Die Möglichkeit, einen einzelnen Puffer zu verwenden, um Ereignisse zu sammeln, die auf mehreren Prozessoren generiert werden. Durch die Verwendung eines einzelnen Puffers werden Ereignisse aus der Reihenfolge auf Mehreren Prozessorcomputern entfernt. Ausführliche Informationen finden Sie im EVENT_TRACE_NO_PER_PROCESSOR_BUFFERING Protokollierungsmodus. Standardmäßig verwendet ETW pro Prozessorpuffer.
  • Die Möglichkeit, eine Stapelablaufverfolgung für Ereignisse zu erfassen. Informationen zum Aktivieren der Stapelverfolgung für Kernelereignisse finden Sie in der TraceSetInformation-Funktion . Informationen zum Aktivieren der Stapelverfolgung für Benutzerereignisse finden Sie im EVENT_ENABLE_PROPERTY_STACK_TRACE Flag für das EnableProperty-Element von ENABLE_TRACE_PARAMETERS.
  • Die Möglichkeit, den EVENT_TRACE_BUFFERING_MODE- oder EVENT_TRACE_FILE_MODE_NEWFILE Protokollierungsmodus mit dem EVENT_TRACE_PRIVATE_LOGGER_MODEProtokollierungsmodus anzugeben (siehe Protokollierungsmoduskonstanten).
  • Die Möglichkeit, einen Anbieter synchron zu aktivieren. Standardmäßig werden Anbieter asynchron aktiviert. Um einen Anbieter synchron zu aktivieren, legen Sie den Timeout-Parameter von EnableTraceEx2 fest.
  • Die Möglichkeit, den Controller anzufordern, dass der Anbieter seinen Status protokolliert. Ausführliche Informationen finden Sie im EVENT_CONTROL_CODE_CAPTURE_STATE Flag für den ControlCode-Parameter"EnableTraceEx2".
  • Die Möglichkeit, Ereignisdaten mithilfe der Funktion TdhFormatProperty zu formatieren.
  • Die Möglichkeit, manifestierte Ereignisse auf Computern zu decodierungen, die den Anbieter nicht enthalten. Ausführliche Informationen finden Sie in der Funktion TdhLoadManifest .

Die folgenden Funktionen wurden in dieser Version hinzugefügt:

Die folgenden Strukturen wurden in dieser Version hinzugefügt:

Die folgenden Aufzählungen wurden in dieser Version hinzugefügt:

Die folgenden MOF-Klassen wurden in dieser Version hinzugefügt: