Compartir a través de


Sesión de seguimiento del registrador global

Una sesión de seguimiento del registrador global registra los eventos que se producen durante el proceso de arranque antes de que el sistema esté totalmente operativo, como los eventos generados por los controladores de dispositivo. Se trata de una sesión de seguimiento reservada integrada en Windows.

Las sesiones de seguimiento del registrador global siempre escriben mensajes en un registro de seguimiento. El registrador global no admite sesiones de seguimiento en tiempo real ni sesiones de seguimiento almacenadas en búfer.

Dado que el registrador global debe estar disponible al principio del proceso de arranque del sistema operativo, se inicia y configura mediante entradas del Registro (en la subclave HKLM\SYSTEM\CurrentControlSet\Control\WMI\GlobalLogger ), en lugar de llamadas de función. Después de iniciarse, el registrador global se comporta como una sesión de seguimiento de eventos normal.

La sesión de seguimiento del registrador global usa un nombre de sesión reservado, "GlobalLogger". El GUID de control se representa mediante la constante GlobalLoggerGuid. Cree una sesión de seguimiento del registrador global y, a continuación, reinicie el equipo para iniciar la sesión de seguimiento. Solo se puede ejecutar una sesión de seguimiento del registrador global en el equipo a la vez.

Para crear una sesión de seguimiento del registrador global, use Tracelog. Crea automáticamente la subclave del Registro y las entradas que almacenan las opciones de sesión de seguimiento. La sesión de seguimiento del registrador global se inicia al reiniciar el equipo. Para obtener más información, consulte Sintaxis de comandos de tracelog.

Para dar formato a los mensajes de seguimiento de una sesión de traza del registrador global, use Tracefmt con system.tmf, un archivo de formato de mensaje de traza incluido en el WDK.

Dado que las entradas del Registro desencadenan la sesión del registrador global, se ejecuta cada vez que las entradas aparecen en el registro. Para evitar que la sesión del registrador global se inicie cada vez que se inicie el sistema, establezca el valor de la entrada Inicio en 0 o elimine todas las entradas del Registro.

Puede convertir una sesión de rastreo del "Global Logger" a una sesión de rastreo del "NT Kernel Logger", lo que permite trazar el kernel durante el proceso de arranque. Para obtener información, consulte Sesión de registrador global en tiempo de arranque.

Los proveedores de seguimiento, como los controladores en modo kernel y las aplicaciones en modo de usuario, pueden iniciar sesión en la sesión de seguimiento del registrador global. Esto le permite realizar un seguimiento de un controlador u otro proveedor de seguimiento durante el arranque del sistema. Para obtener información, consulte Registro en la Global Logger Session.

Limitaciones de la sesión de seguimiento del registrador global

La sesión de seguimiento del registrador global es muy útil, pero es importante tener en cuenta sus limitaciones:

Solo puede ejecutar una sesión de registrador global a la vez.

La sesión del registrador global no envía notificaciones de habilitación a los proveedores.

Las entradas del registro Global Logger permanecen en el registro y son efectivas hasta que las restablezca o las elimine manualmente, o use el comando tracelog -remove. Hasta que los restablezca, la sesión del registrador global se inicia cada vez que inicie el sistema.

El registrador ACPI de Windows está habilitado permanentemente para la sesión de seguimiento del registrador global. Los mensajes de seguimiento de este registrador aparecen en el registro de seguimiento.

Si se inicia una sesión de seguimiento estándar mientras un controlador inicia sesión en la sesión del registrador global, el controlador cambia y comienza a iniciar el registro en la sesión de seguimiento estándar.

Entradas del Registro de registrador global

En la tabla siguiente se muestran las entradas del Registro que configuran la sesión de registrador global. Estas entradas se encuentran en la subclave HKLM\SYSTEM\CurrentControlSet\Control\WMI\GlobalLogger . Solo se requiere la entrada Inicio .

Además de las entradas del Registro de esta tabla, también puede agregar una subclave ControlGUID en la subclave GlobalLogger para representar un proveedor de seguimiento, como un controlador, que registra en la sesión de seguimiento del Global Logger. Para obtener información, consulte Registro en la sesión del registrador global.

Entrada Tipo de dato Descripción

Iniciar

REG_DWORD

Cuando se establece en 1 (on), la sesión del registrador global se inicia la próxima vez que se inicie el sistema.

0 = desactivado, 1=on

BufferSize

REG_DWORD

Especifica el tamaño de cada búfer (en KB). El valor predeterminado es 0x40 (64 KB).

TipoDeReloj

REG_DWORD

Especifica el temporizador utilizado para las marcas de tiempo del mensaje de seguimiento.

A partir de Windows Vista, el valor predeterminado es 1. En los sistemas operativos anteriores a Windows Vista, el valor predeterminado es 2.

1 = Valor del contador de rendimiento (alta resolución)

2 = Temporizador del sistema

3 = reloj del ciclo de CPU

EnableKernelFlags

REG_BINARIO

Convierte la sesión del registrador global en una sesión de seguimiento del registrador de kernel nt y especifica los eventos incluidos en el seguimiento del kernel.

Para obtener información, consulte Sesión de registrador global en tiempo de arranque.

FileCounter

REG_DWORD

Almacena el número de archivos de registro de seguimiento de eventos generados por sesiones de registrador global.

El sistema incrementa este valor hasta que alcanza el valor de FileMax. A continuación, restablece el valor a 0.

Este contador impide que el sistema sobrescriba un archivo de registro de seguimiento del registrador global.

FileMax

REG_DWORD

Especifica el número máximo de archivos de registro de seguimiento de eventos permitidos en el sistema.

Cuando el número de registros de seguimiento alcanza el máximo especificado, el sistema comienza a sobrescribir los registros, empezando por el más antiguo.

El valor predeterminado es 0, lo que significa que no hay ningún máximo.

Nombre de archivo

REG_SZ

Ruta de acceso (opcional) y nombre de archivo del archivo de registro de seguimiento de eventos. El valor predeterminado es %SystemRoot%\System32\LogFiles\WMI\trace.log.

FlushTimer

REG_DWORD

Especifica con qué frecuencia (en segundos) los búferes de seguimiento son vaciados por la fuerza. Este vaciado forzado se suma al vaciado automático que se produce cada vez que un búfer está lleno y cuando se detiene la sesión de seguimiento.

El valor predeterminado es 0. De forma predeterminada, los búferes solo se vacían cuando están llenos.

El tiempo de vaciado mínimo es de 1 segundo.

LogFileMode

REG_DWORD

Especifica las opciones de sesión de registro.

Solo se admite en Windows Vista y versiones posteriores de Windows.

MaximumBuffers

REG_DWORD

Especifica el número máximo de búferes que se pueden asignar para la sesión. El valor predeterminado es 0x19 (25).

MaximumFileSize

REG_DWORD

Especifica el tamaño máximo del archivo de registro de seguimiento de eventos. De forma predeterminada, no hay ningún tamaño máximo de archivo.

MinimumBuffers

REG_DWORD

Especifica el número de búferes asignados cuando se inicia la sesión. El valor predeterminado es 0x3.

Estado

REG_DWORD

Almacena el código devuelto del intento de iniciar una sesión de seguimiento del registrador global.

Si no se pudo iniciar la sesión, el valor de esta entrada es un código de error win32. Si se inició la sesión, el valor de esta entrada es ERROR_SUCCESS.

Estas entradas del Registro que cree permanecen en el Registro y son efectivas hasta que las elimine o cambie sus valores. Por lo tanto, después de ejecutar la sesión de registrador global, use el registro de seguimiento -remove comando GlobalLogger para establecer el valor de la entrada Inicio en 0 y eliminar las demás entradas del Registro de registrador global. De lo contrario, la sesión del registrador global se ejecuta cada vez que reinicia el equipo y el archivo de registro resultante puede crecer muy grande.

Constantes del modo de registro

En la tabla siguiente se muestran los valores válidos para la entrada del Registro LogFileMode en la subclave HKLM\System\CurrentControlSet\Control\WMI\GlobalLogger . Esta entrada se usa para establecer opciones para una sesión de seguimiento del registrador global, incluidas las de sesiones de seguimiento en tiempo real, sesiones de seguimiento privadas, registro circular y almacenamiento en búfer (sin registro). Esta entrada del Registro solo se admite en Windows Vista y versiones posteriores de Windows.

Esta entrada del Registro corresponde al miembro LogFileMode de la estructura EVENT_TRACE_PROPERTIES. Sus valores corresponden a las constantes del modo de registro. La estructura EVENT_TRACE_PROPERTIES y las constantes del modo de registro se describen en la documentación de Microsoft Windows SDK.

Esta tabla se muestra aquí para mostrar los valores hexadecimales de las constantes. Use estos valores o una suma de estos valores para representar la constante en la entrada del Registro LogFileMode .

Importancia Constante Descripción

0x0

EVENT_TRACE_FILE_MODE_NONE

No se crean archivos de registro de seguimiento de eventos.

0x1

MODO_ARCHIVO_EVENTO_TRACEO_SECUENCIAL

Los archivos de registro de seguimiento de eventos son secuenciales.

0x2

EVENT_TRACE_FILE_MODE_CIRCULAR

Los archivos de registro de seguimiento de eventos son circulares.

0x4

MODO_DE_ARCHIVO_DE_TRAZA_DE_EVENTO_ADJUNTAR

Anexe mensajes de seguimiento a un archivo de registro existente. Este modo solo es válido con archivos secuenciales.

0x8

EVENT_TRACE_FILE_MODE_NEWFILE (modo de archivo de nuevo archivo de trazado de eventos)

Cree un nuevo archivo de registro de seguimiento de eventos cada vez que el archivo existente alcance el valor de la entrada MaximumFileSize (consulte la tabla anterior).

0x20

EVENT_TRACE_FILE_MODE_PREALLOCATE

Reserva espacio para el archivo de registro de seguimiento de eventos.

Válido solo con EVENT_TRACE_FILE_MODE_SEQUENTIAL o EVENT_TRACE_FILE_MODE_CIRCULAR, y no válido con EVENT_TRACE_FILE_MODE_NEWFILE.

0x40

EVENT_TRACE_NONSTOPPABLE_MODE

Una llamada a StopTrace no detiene la sesión de seguimiento.

Esta característica impide que los usuarios detengan las sesiones de seguimiento que el sistema requiere para el diagnóstico y la optimización.

0x100

EVENT_TRACE_REAL_TIME_MODE

Especifica una sesión de seguimiento en tiempo real.

0x200

MODO_DE_RETRASO_DE_RASTREO_DE_EVENTOS_AL_ABRIR_ARCHIVO

Solo para uso interno.

0x400

EVENT_TRACE_BUFFERING_MODE

Los eventos se conservan en los búferes. Nunca se escriben en un archivo de registro ni se entregan a un consumidor de seguimiento.

0x800

EVENT_TRACE_PRIVATE_LOGGER_MODE

Especifica una sesión de seguimiento privada. Esta marca no es válida para una sesión de seguimiento del registrador global.

0x1000

EVENT_TRACE_ADD_HEADER_MODE

Solo para uso interno.

0x2000

EVENT_TRACE_USE_KBYTES_FOR_SIZE

Interprete el valor de MaximumFileSize en KB, en lugar de MB.

0x4000

EVENT_TRACE_USE_GLOBAL_SEQUENCE

Genera números de secuencia globales para los mensajes de seguimiento. Estos números son únicos para todas las sesiones de seguimiento del ordenador.

De forma predeterminada, los mensajes de seguimiento no tienen ningún número de secuencia.

0x8000

EVENT_TRACE_USE_LOCAL_SEQUENCE

Genera números de secuencia local para los mensajes de seguimiento. Estos números son únicos en la sesión de seguimiento.

De forma predeterminada, los mensajes de seguimiento no tienen ningún número de secuencia.

0x10000

EVENT_TRACE_RELOG_MODE

Solo para uso interno.

0x80000

EVENT_TRACE_KD_FILTER_MODE

Redirige los mensajes de seguimiento al depurador de kernel y establece el tamaño del búfer de seguimiento en 3 KB, el tamaño máximo del búfer para el depurador.

0x1000000

EVENT_TRACE_MODE_RESERVADO

No es válido para una sesión de seguimiento del registrador global.

0x01000000

EVENT_TRACE_USE_PAGED_MEMORY

Asigne búferes de sesión de rastreo de la memoria paginable. De forma predeterminada, los búferes se asignan a partir de memoria no paginable.