Compartir vía


Directivas AddAutoLogger y UpdateAutoLogger de INF

Las directivas AddAutoLogger y UpdateAutoLogger se usan dentro de un DDInstall inf. Sección Eventos. Especifican características para las sesiones de AutoLogger de seguimiento de eventos para Windows (ETW) que registran los eventos que se producen al principio del proceso de arranque del sistema operativo. Estas directivas se admiten a partir de Windows 11.

[DDInstall.Events] 

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

Entradas

session-name
Especifica el nombre de la sesión de AutoLogger que se agregará. Este nombre debe ser único entre el conjunto de sesiones de AutoLogger en un equipo. Se recomienda que el nombre de la sesión incluya el nombre de su empresa o una abreviatura de su nombre de empresa para que no entre en conflicto con el nombre de una sesión de otra empresa.

SessionGUID
Especifica el valor GUID que identifica la sesión de AutoLogger. Esto se puede expresar como un valor GUID explícito del formulario {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} o como un token %strkey% definido {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} en en una sección Strings del archivo INF.

add-autologger-install-section
Hace referencia a una sección definida por INF-writer que contiene información para registrar el registrador automático. Para obtener más información, vea la siguiente sección Comentarios .

update-autologger-install-section
Hace referencia a una sección definida por INF-writer que contiene información para agregar proveedores a un registrador automático existente. Para obtener más información, vea la siguiente sección Comentarios .

Observaciones

Para obtener más información sobre AutoLoggers, consulte Configuración e inicio de una sesión de AutoLogger.

Cada nombre de sección creado por INF-writer debe ser único dentro del archivo INF y debe seguir las reglas generales para definir nombres de sección. Para obtener más información sobre estas reglas, vea Reglas de sintaxis general para archivos INF.

Una directiva AddAutoLogger debe hacer referencia a una sección add-autologger-install-section en otra parte del archivo INF. Cada sección tiene el siguiente formato:

[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) 
… 

Cada add-autologger-install-section debe proporcionar Start. Opcionalmente, especifique uno o varios proveedores de AutoLogger para AutoLogger mediante AddAutoLoggerProvider, cada uno en una línea independiente. Para obtener más información sobre los proveedores de AutoLogger en un archivo INF, vea Agregar proveedores de AutoLogger a continuación.

Una directiva UpdateAutoLogger debe hacer referencia a una sección denominada update-autologger-install-section en otra parte del archivo INF. Cada sección de este tipo tiene el siguiente formato:

[update-autologger-install-section] 

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

Cada sección update-autologger-install-section puede especificar uno o varios proveedores de AutoLogger mediante AddAutoLoggerProvider, cada uno de ellos en una línea independiente. Para obtener más información sobre los proveedores de AutoLogger en un archivo INF, vea Agregar proveedores de AutoLogger a continuación.

Entradas y valores de Add-AutoLogger-Install-Section

Empezar=0 | 1
Especifica si autologger se iniciará la próxima vez que se reinicie el equipo. Para iniciar AutoLogger, establezca este valor en 1; de lo contrario, establezca este valor en 0.

BufferSize=tamaño del búfer
Opcionalmente, especifica el tamaño de cada búfer, en kilobytes. BufferSize debe ser menor que un megabyte. ETW usa el tamaño de la memoria física para calcular este valor si no está establecido.

ClockType=tipo de reloj
Opcionalmente, especifica el temporizador que se va a usar al registrar la marca de tiempo para cada evento con los siguientes valores numéricos, expresados en decimal o, como se muestra en la siguiente lista, en notación hexadecimal. Si se omite, este valor predeterminado es 0x1 (valor del contador de rendimiento).

0x1 (valor del contador de rendimiento)

0x2 (temporizador del sistema)

0x3 (contador de ciclo de CPU)

Para obtener una descripción de cada tipo de reloj, consulte el miembro ClientContext de WNODE_HEADER.

DisableRealtimePersistence=0 | 1
Opcionalmente, permite deshabilitar la persistencia en tiempo real estableciendo el valor en 1. El valor predeterminado es 0 (habilitado). Si la persistencia en tiempo real está habilitada, se conservarán los eventos en tiempo real que no se entregaron en el momento en que se desinstaló el equipo. A continuación, los eventos se entregarán al consumidor la próxima vez que el consumidor se conecte a la sesión.

Nombre=nombre de archivo
Opcionalmente, especifica la ruta de acceso completa del archivo de registro. Si la ruta de acceso no existe, habrá un mejor esfuerzo de creación la primera vez que se inicie AutoLogger. La longitud de FileName está limitada a 1024 caracteres. El archivo es un archivo de registro secuencial. La ruta de acceso del archivo predeterminada es %DriverData%\<SessionName.etl>.

FileMax=file-max
Opcionalmente, especifica el número máximo de instancias del archivo de registro que crea ETW. Una vez creado el número máximo de archivos, ETW sobrescribe el primer archivo, si existe. El número máximo de instancias del archivo de registro que se admite es 16. No use esta característica con el EVENT_TRACE_FILE_MODE_NEWLINE LogFileMode.

FlushTimer=flush-timer
Opcionalmente, especifica con qué frecuencia, en segundos, los búferes de seguimiento se vacían forzosamente. El tiempo de vaciado mínimo es de 1 segundo. El valor predeterminado es 0. De forma predeterminada, los búferes solo se vacían cuando están llenos.

LogFileMode=log-file-mode
Opcionalmente, especifica uno o varios modos de registro. Para conocer los valores posibles, consulte Constantes del modo de registro. El valor predeterminado es 0x1 (EVENT_TRACE_FILE_MODE_SEQUENTIAL).

MaxFileSize=max-file-size
Opcionalmente, especifica el tamaño máximo del archivo de registro, en megabytes. La sesión se cierra cuando se alcanza el tamaño máximo, a menos que se especifique EVENT_TRACE_FILE_MODE_CIRCULAR en LogFileMode. Para especificar ningún límite, establezca el valor en 0. El valor predeterminado es de 100 mb. El comportamiento que se produce cuando se alcanza el tamaño máximo del archivo depende del valor de LogFileMode.

MaximumBuffers=búferes máximos
Opcionalmente, especifica el número máximo de búferes que se van a asignar, normalmente el número mínimo de búferes más veinte. Este valor debe ser mayor o igual que el valor de MinimumBuffers.

MinimumBuffers=búferes mínimos
Opcionalmente, especifica el número mínimo de búferes que se van a asignar al inicio. El número mínimo de búferes que puede especificar es dos búferes por procesador.

AddAutoLoggerProvider={ProviderGUID},autologger-provider-install-section
Opcionalmente, especifica un proveedor con una subdirecta que hace referencia a una sección autologger-provider-install-fined de INF-writer en otra parte del archivo INF. Para obtener más información, consulte la siguiente sección Agregar proveedores de AutoLogger .

Adición de proveedores de AutoLogger

En las secciones add-autologger-install-section y update-autologger-install-section , puede especificar proveedores que quiera habilitar en la sesión mediante la directiva AddAutoLoggerProvider .

ProviderGUID debe ser un valor GUID que identifique el proveedor AutoLogger. Esto se puede expresar como un valor GUID explícito del formulario {nn-nn-n-n-nn} o como %str token dekey% definido en {nn-nn-n-nn-nn} en una sección Strings del archivo INF.

Una subdirectivo AddAutoLoggerProvider también debe hacer referencia a una sección autologger-provider-install-section en otra parte del archivo. Cada sección de este tipo tiene el siguiente formato:

[autologger-provider-install-section] 

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

Entradas y valores de AutoLogger-Provider-Install-Section

Habilitado=0 | 1
Opcionalmente, proporciona si el proveedor está habilitado. Para habilitar el proveedor, establezca este valor en 1. Para deshabilitarlo, establezca el valor en 0. El valor predeterminado es 0.

EnableFlags=enable-flags
Opcionalmente, especifica la clase de eventos para los que el proveedor genera eventos. Para obtener más información, consulte el parámetro EnableFlags de la función EnableTraceEx . Especifique este nombre de valor si el proveedor no admite MatchAnyKeyword o MatchAllKeyword.

EnableLevel=enable-level
Opcionalmente, proporciona el nivel de detalle incluido en el evento . Para obtener una lista de niveles predefinidos, consulte el parámetro Level de la función EnableTraceEx .

EnableProperty=enable-property
Opcionalmente, proporciona la inclusión de uno o varios de los siguientes elementos en el archivo de registro:

0x00000001 (EVENT_ENABLE_PROPERTY_SID) = Incluir en los datos extendidos el identificador de seguridad (SID) del usuario.

0x00000002 (EVENT_ENABLE_PROPERTY_TS_ID) = Incluir en los datos extendidos el identificador de sesión del terminal.

0x00000004 (EVENT_ENABLE_PROPERTY_STACK_TRACE) = Incluir en los datos extendidos un seguimiento de pila de llamadas para eventos escritos mediante EventWrite.

0x00000010 (EVENT_ENABLE_PROPERTY_IGNORE_KEYWORD_0) = Filtra todos los eventos que no tienen una palabra clave distinta de cero especificada.

0x00000020 (EVENT_ENABLE_PROPERTY_PROVIDER_GROUP) = Indica que esta llamada a EnableTraceEx2 debe habilitar un grupo de proveedores en lugar de un proveedor individual.

0x00000080 (EVENT_ENABLE_PROPERTY_PROCESS_START_KEY) = Incluir la clave de inicio del proceso en los datos extendidos.

0x00000100 (EVENT_ENABLE_PROPERTY_EVENT_KEY) = Incluir la clave de evento en los datos extendidos.

0x00000200 (EVENT_ENABLE_PROPERTY_EXCLUDE_INPRIVATE) = Filtra todos los eventos marcados como un evento InPrivate o proceden de un proceso marcado como InPrivate.

MatchAnyKeyword=match-any-keyword
Opcionalmente, proporciona una máscara de bits de palabras clave que determinan la categoría de eventos que desea que escriba el proveedor. El proveedor escribe el evento si alguno de los bits de palabra clave del evento coincide con cualquiera de los bits establecidos en esta máscara. Para especificar que el proveedor escribe todos los eventos, establezca este valor en cero. Para obtener un ejemplo, vea la sección Comentarios de la función EnableTraceEx .

MatchAllKeyword=match-all-keyword
Opcionalmente, restringe la categoría de eventos que desea que escriba el proveedor. Si la palabra clave del evento cumple la condición MatchAnyKeyword , el proveedor escribirá el evento solo si todos los bits de esta máscara existen en la palabra clave del evento. Esta máscara no se usa si MatchAnyKeyword es cero. Para obtener un ejemplo, vea la sección Comentarios de la función EnableTraceEx .

Ejemplos

[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 

Compatibilidad heredada

Las directivas AddAutoLogger y UpdateAutoLogger se admiten a partir de Windows 11. Para configurar un AutoLogger en un sistema operativo de nivel inferior, use la directiva AddReg .

[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 

Consulte también

DDInstall. Eventos