Freigeben über


INF AddAutoLogger- und UpdateAutoLogger-Anweisungen

AddAutoLogger - und UpdateAutoLogger-Direktiven werden in einem INF DDInstall verwendet. Abschnitt "Ereignisse". Sie geben Merkmale für ETW-Autologger-Sitzungen ( Event Tracing for Windows ) an, die Ereignisse aufzeichnen, die zu einem frühen Zeitpunkt im Startvorgang des Betriebssystems auftreten. Diese Anweisungen werden ab Windows 11 unterstützt.

[DDInstall.Events] 

AddAutoLogger=session-name,{SessionGUID},add-autologger-install-section 
UpdateAutoLogger=session-name,update-autologger-install-section 
... 

Einträge

Sitzungsname
Gibt den Namen der AutoLogger-Sitzung an, die hinzugefügt wird. Dieser Name muss für die Gruppe der AutoLogger-Sitzungen auf einem Computer eindeutig sein. Es wird empfohlen, dass der Sitzungsname den Namen Ihres Unternehmens oder eine Abkürzung Ihres Unternehmensnamens enthält, damit er nicht mit dem Namen einer Sitzung aus einem anderen Unternehmen in Konflikt steht.

SessionGUID
Gibt den GUID-Wert an, der die AutoLogger-Sitzung identifiziert. Dies kann als expliziter GUID-Wert des Formulars {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} oder als %strkey%-Token ausgedrückt werden, das {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} in einem Strings-Abschnitt der INF-Datei definiert ist.

add-autologger-install-section
Verweist auf einen inF-Writer definierten Abschnitt, der Informationen zum Registrieren der AutoLogger enthält. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise" .

update-autologger-install-section
Verweist auf einen inF-Writer definierten Abschnitt, der Informationen zum Hinzufügen von Anbietern zu einer vorhandenen AutoLogger enthält. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise" .

Bemerkungen

Weitere Informationen zu AutoLoggers finden Sie unter Konfigurieren und Starten einer AutoLogger-Sitzung.

Jeder vom INF-Writer erstellte Abschnittsname muss innerhalb der INF-Datei eindeutig sein und den allgemeinen Regeln zum Definieren von Abschnittsnamen entsprechen. Weitere Informationen zu diesen Regeln finden Sie unter Allgemeine Syntaxregeln für INF-Dateien.

Eine AddAutoLogger-Direktive muss an anderer Stelle in der INF-Datei auf einen Namen add-autologger-install-section verweisen. Jeder Abschnitt hat das folgende Formular:

[add-autologger-install-section] 

Start=<0 | 1> 
[BufferSize=buffer-size] 
[ClockType=clock-type] 
[DisableRealtimePersistence= <0 | 1>] 
[FileName=path-to-file] 
[FileMax=file-max]
[FlushTimer=flush-timer] 
[LogFileMode=log-file-mode] 
[MaxFileSize=max-file-size] 
[MaximumBuffers=max-buffers] 
[MinimumBuffers=min-buffers] 

(AddAutoLoggerProvider={ProviderGUID},autologger-provider-install-section) 
… 

Jeder add-autologger-install-section muss Start bereitstellen. Geben Sie optional einen oder mehrere AutoLogger-Anbieter für die AutoLogger-Instanz mithilfe von AddAutoLoggerProvider an, jeweils in einer separaten Zeile. Weitere Informationen zu AutoLogger-Anbietern in einer INF-Datei finden Sie weiter unten unter Hinzufügen von AutoLogger-Anbietern .

Eine UpdateAutoLogger-Direktive muss an anderer Stelle in der INF-Datei auf einen benannten update-autologger-install-section verweisen. Jeder dieser Abschnitte hat das folgende Formular:

[update-autologger-install-section] 

(AddAutoLoggerProvider={ProviderGUID},autologger-provider-install-section) 
… 

Jeder update-autologger-install-section kann einen oder mehrere AutoLogger-Anbieter mit AddAutoLoggerProvider angeben, die jeweils in einer separaten Zeile enthalten sind. Weitere Informationen zu AutoLogger-Anbietern in einer INF-Datei finden Sie weiter unten unter Hinzufügen von AutoLogger-Anbietern .

Add-AutoLogger-Install-Section-Einträge und -Werte

Starten=0 | 1
Gibt an, ob der AutoLogger beim nächsten Neustart des Computers gestartet wird. Um die AutoLogger zu starten, legen Sie diesen Wert auf 1 fest, andernfalls legen Sie diesen Wert auf 0 fest.

Buffersize=Puffergröße
Gibt optional die Größe jedes Puffers in KB an. BufferSize sollte kleiner als ein Megabyte sein. ETW verwendet die Größe des physischen Arbeitsspeichers, um diesen Wert zu berechnen, wenn er nicht festgelegt ist.

ClockType=Uhrtyp
Gibt optional den Timer an, der beim Protokollieren des Zeitstempels für jedes Ereignis mit den folgenden numerischen Werten verwendet werden soll, die entweder als Dezimalwert oder, wie in der folgenden Liste gezeigt, in hexadezimaler Notation ausgedrückt werden. Wenn nicht angegeben, wird standardmäßig 0x1 (Leistungsindikatorwert) angegeben.

0x1 (Leistungsindikatorwert)

0x2 (Systemtimer)

0x3 (CPU-Zykluszähler)

Eine Beschreibung der einzelnen Uhrtypen finden Sie im ClientContext-Member von WNODE_HEADER.

DisableRealtimePersistence=0 | 1
Optional können Sie die Echtzeitpersistenz deaktivieren, indem Sie den Wert auf 1 festlegen. Der Standardwert ist 0 (aktiviert). Wenn die Echtzeitpersistenz aktiviert ist, werden Echtzeitereignisse, die zum Zeitpunkt des Herunterfahrens des Computers nicht übermittelt wurden, beibehalten. Die Ereignisse werden dann an den Consumer übermittelt, wenn der Consumer das nächste Mal eine Verbindung mit der Sitzung herstellt.

Dateiname=Dateiname
Gibt optional den vollqualifizierten Pfad der Protokolldatei an. Wenn der Pfad nicht vorhanden ist, wird beim ersten Start der AutoLogger eine optimale Erstellung ausgeführt. Die Länge von FileName ist auf 1024 Zeichen beschränkt. Die Datei ist eine sequenzielle Protokolldatei. Der Standarddateipfad ist %DriverData%\<SessionName.etl>.

FileMax=file-max
Gibt optional die maximale Anzahl von Instanzen der Protokolldatei an, die ETW erstellt. Sobald die maximale Anzahl von Dateien erstellt wurde, überschreibt ETW die erste Datei, sofern vorhanden. Die maximale Anzahl von Instanzen der Protokolldatei, die unterstützt wird, ist 16. Verwenden Sie dieses Feature nicht mit dem EVENT_TRACE_FILE_MODE_NEWLINE LogFileMode.

FlushTimer=Flush-Timer
Gibt optional an, wie oft die Ablaufverfolgungspuffer in Sekunden gewaltsam geleert werden. Die minimale Spülzeit beträgt 1 Sekunde. Der Standardwert ist 0. Standardmäßig werden Puffer nur geleert, wenn sie voll sind.

LogFileMode=log-file-mode
Gibt optional einen oder mehrere Protokollmodi an. Mögliche Werte finden Sie unter Protokollierungsmoduskonstanten. Der Standardwert ist 0x1 (EVENT_TRACE_FILE_MODE_SEQUENTIAL).

Maxfilesize=maximale Dateigröße
Gibt optional die maximale Dateigröße der Protokolldatei in Megabyte an. Die Sitzung wird geschlossen, wenn die maximale Größe erreicht wird, es sei denn, EVENT_TRACE_FILE_MODE_CIRCULAR wird in LogFileMode angegeben. Um kein Limit anzugeben, legen Sie den Wert auf 0 fest. Der Standardwert ist 100 MB. Das Verhalten, das auftritt, wenn die maximale Dateigröße erreicht wird, hängt vom Wert von LogFileMode ab.

MaximumBuffers=Maximale Puffer
Gibt optional die maximale Anzahl zuzuordnenden Puffer an, in der Regel die Mindestanzahl von Puffern plus zwanzig. Dieser Wert muss größer oder gleich dem Wert von MinimumBuffers sein.

MinimumBuffers=Mindestpuffer
Gibt optional die Mindestanzahl von Puffern an, die beim Start zugeordnet werden sollen. Die Mindestanzahl von Puffern, die Sie angeben können, beträgt zwei Puffer pro Prozessor.

AddAutoLoggerProvider={ProviderGUID},autologger-provider-install-section
Gibt optional einen Anbieter mit einer Unterdirektive an, die an anderer Stelle in der INF-Datei auf einen inF-Writer-defined autologger-provider-install-section verweist. Weitere Informationen finden Sie im abschnitt Hinzufügen von AutoLogger-Anbietern .

Hinzufügen von AutoLogger-Anbietern

In den Abschnitten add-autologger-install-section und update-autologger-install-section können Sie Anbieter angeben, die Sie in der Sitzung mithilfe der AddAutoLoggerProvider-Direktive aktivieren möchten.

Die ProviderGUID muss ein GUID-Wert sein, der den AutoLogger-Anbieter identifiziert. Dies kann als expliziter GUID-Wert der Form {nnnnnnnn-nnnn-nnnn-nnnn} ausgedrückt werden. key% token defined to {nnnnnnn-nnnnn-nnnnn-nn} in a Strings section of the INF file.

Eine AddAutoLoggerProvider-Unteranweisung muss auch auf einen autologger-provider-install-section an anderer Stelle in der Datei verweisen. Jeder dieser Abschnitte hat das folgende Formular:

[autologger-provider-install-section] 

[Enabled=<0 | 1>] 
[EnableFlags=enable-flags] 
[EnableLevel=enable-level] 
[EnablePropety=enable-property] 
[MatchAnyKeyword=match-any-keyword] 
[MatchAllKeyword=match-all-keyword] 

AutoLogger-Provider-Install-Section Einträge und Werte

Aktiviert=0 | 1
Gibt optional an, ob der Anbieter aktiviert ist. Um den Anbieter zu aktivieren, legen Sie diesen Wert auf 1 fest. Legen Sie zum Deaktivieren den Wert auf 0 fest. Der Standardwert ist 0.

EnableFlags=enable-flags
Gibt optional die Klasse von Ereignissen an, für die der Anbieter Ereignisse generiert. Ausführliche Informationen finden Sie im EnableFlags-Parameter der EnableTraceEx-Funktion . Geben Sie diesen Wertnamen an, wenn der Anbieter MatchAnyKeyword oder MatchAllKeyword nicht unterstützt.

EnableLevel=Aktivierungsebene
Stellt optional die Detailebene bereit, die im Ereignis enthalten ist. Eine Liste der vordefinierten Ebenen finden Sie im Level-Parameter der EnableTraceEx-Funktion .

EnableProperty=enable-property
Stellt optional die Aufnahme eines oder mehrerer der folgenden Elemente in die Protokolldatei bereit:

0x00000001 (EVENT_ENABLE_PROPERTY_SID) = Schließen Sie den Sicherheitsbezeichner (SID) des Benutzers in die erweiterten Daten ein.

0x00000002 (EVENT_ENABLE_PROPERTY_TS_ID) = Schließen Sie den Terminalsitzungsbezeichner in die erweiterten Daten ein.

0x00000004 (EVENT_ENABLE_PROPERTY_STACK_TRACE) = Schließen Sie in die erweiterten Daten eine Aufrufstapelablaufverfolgung für Ereignisse ein, die mit EventWrite geschrieben wurden.

0x00000010 (EVENT_ENABLE_PROPERTY_IGNORE_KEYWORD_0) = Filtert alle Ereignisse heraus, für die kein Schlüsselwort (keyword) ungleich null angegeben ist.

0x00000020 (EVENT_ENABLE_PROPERTY_PROVIDER_GROUP) = Gibt an, dass dieser Aufruf von EnableTraceEx2 eine Anbietergruppe anstelle eines einzelnen Ereignisanbieters aktivieren soll.

0x00000080 (EVENT_ENABLE_PROPERTY_PROCESS_START_KEY) = Schließen Sie den Prozessstartschlüssel in die erweiterten Daten ein.

0x00000100 (EVENT_ENABLE_PROPERTY_EVENT_KEY) = Schließen Sie den Ereignisschlüssel in die erweiterten Daten ein.

0x00000200 (EVENT_ENABLE_PROPERTY_EXCLUDE_INPRIVATE) = Filtert alle Ereignisse heraus, die entweder als InPrivate-Ereignis gekennzeichnet sind oder aus einem Prozess stammen, der als InPrivate markiert ist.

MatchAnyKeyword=match-any-Schlüsselwort (keyword)
Stellt optional eine Bitmaske von Schlüsselwörtern bereit, die die Kategorie der Ereignisse bestimmen, die der Anbieter schreiben soll. Der Anbieter schreibt das Ereignis, wenn eines der Schlüsselwort (keyword) Bits des Ereignisses mit einem der in dieser Maske festgelegten Bits übereinstimmt. Um anzugeben, dass der Anbieter alle Ereignisse schreibt, legen Sie diesen Wert auf Null fest. Ein Beispiel finden Sie im Abschnitt Hinweise der EnableTraceEx-Funktion .

MatchAllKeyword=match-all-Schlüsselwort (keyword)
Schränkt optional die Kategorie von Ereignissen ein, die der Anbieter schreiben soll. Wenn die Schlüsselwort (keyword) des Ereignisses die MatchAnyKeyword-Bedingung erfüllt, schreibt der Anbieter das Ereignis nur, wenn alle Bits in dieser Maske im Schlüsselwort (keyword) des Ereignisses vorhanden sind. Diese Maske wird nicht verwendet, wenn MatchAnyKeyword null ist. Ein Beispiel finden Sie im Abschnitt Hinweise der EnableTraceEx-Funktion .

Beispiele

[Contoso_Add_AutoLogger_Inst] 
Start = 1 
FileName = %%DriverData%%\Contoso\AutoLoggerLogFile.etl  
AddAutoLoggerProvider = {4b8b1947-ae4d-54e2-826a-1aee78ef05b2}, Contoso_Provider_1_Inst

[Contoso_Update_AutoLogger_Inst] 
AddAutoLoggerProvider= {a55d5a23-1a5b-580a-2be5-d7188f43fae1}, Contoso_Provider_2_Inst

[Contoso_Provider_1_Inst] 
Enabled = 1
EnableProperty = 0x00000001

[Contoso_Provider_2_Inst] 
Enabled = 1 

Legacykompatibilität

Die AddAutoLogger- und UpdateAutoLogger-Anweisungen werden ab Windows 11 unterstützt. Verwenden Sie die AddReg-Anweisung , um eine AutoLogger für ein Betriebssystem auf Downlevel zu konfigurieren.

[Contoso_AutoLogger_AddReg] 
HKLM,SYSTEM\CurrentControlSet\Control\WMI\Autologger\<autologger-session-name>,Start,0x00010001,1 
HKLM,SYSTEM\CurrentControlSet\Control\WMI\Autologger\<autologger-session-name>,GUID,,{autologger-guid} 
HKLM,SYSTEM\CurrentControlSet\Control\WMI\Autologger\<autologger-session-name>\{autologger-provider-guid},Enabled,0x00010001,1 

Weitere Informationen

DDInstall. Ereignisse