Palabras clave y niveles ETW de CLR
El Seguimiento de eventos para Windows (ETW) se puede filtrar por categoría y nivel. Las Palabras clave ETW de CLR de evento permiten el filtrado de eventos por categoría; se usan en combinaciones para los proveedores de tiempo de ejecución y detención. Los niveles de evento se identifican mediante marcas.
Palabras clave ETW de CLR
Las palabras clave son marcas que se pueden combinar para generar valores. En la práctica, cuando se llama a las utilidades de línea de comandos, se usan los valores hexadecimales de las palabras clave en lugar de los nombres de palabra clave.
Las palabras clave se describen en la tabla siguiente.
Combinaciones de palabras clave para la resolución de símbolos para el proveedor de runtime
Combinaciones de palabras clave para la resolución de símbolos para el proveedor de detención
Palabras clave de runtime de ETW de CLR
En la tabla siguiente se enumeran las palabras clave de runtime de ETW de CLR, sus valores y se explica para qué se usan.
Nombre de la palabra clave de runtime | Value | Propósito |
---|---|---|
GCKeyword |
0x00000001 | Habilita la recopilación de eventos de recolección de elementos no utilizados. |
LoaderKeyword |
0x00000008 | Habilita la recopilación de eventos de cargador. |
JITKeyword |
0x00000010 | Habilita la recopilación de eventos Just-In-Time (JIT). |
NGenKeyword |
0x00000020 | Habilita la recopilación de eventos para los métodos de imágenes nativas (métodos procesados por el generador de imágenes nativas, Ngen.exe); se usa con StartEnumerationKeyword y EndEnumerationKeyword . Esta palabra clave tiene una gran sobrecarga. Genera eventos para todos los métodos que se encuentran en los módulos cargados de NGen. Siempre que sea posible, en lugar de usar esta palabra clave, le recomendamos que use las bases de datos de programa (PDB) generadas por herramientas de generación de perfiles para recuperar información acerca de los métodos de los módulos NGen. Vea también OverrideAndSuppressNGenEventsKeyword más adelante en esta tabla. |
StartEnumerationKeyword |
0x00000040 | Habilita la enumeración de todos los métodos en runtime; se usa junto con NGenKeyword . |
EndEnumerationKeyword |
0x00000080 | Habilita la enumeración de todos los métodos destruidos en runtime; se usa junto con JITKeyword y NGenKeyword . |
SecurityKeyword |
0x00000400 | Habilita la recopilación de eventos de seguridad. |
AppDomainResourceManagementKeyword |
0x00000800 | Habilita la recopilación de eventos de supervisión de recursos en un nivel de dominio de aplicación. |
JITTracingKeyword |
0x00001000 | Habilita la recopilación de eventos de seguimiento JIT. |
InteropKeyword |
0x00002000 | Habilita la recopilación de eventos de interoperabilidad. |
ContentionKeyword |
0x00004000 | Habilita la recopilación de eventos de contención. |
ExceptionKeyword |
0x00008000 | Habilita la recopilación de eventos de excepción. |
ThreadingKeyword |
0x00010000 | Habilita la recopilación de eventos de grupo de subprocesos. |
OverrideAndSuppressNGenEventsKeyword |
0x00040000 | (Disponible en .NET Framework 4.5 y posteriores) Suprime la palabra clave NGenKeyword de elevada sobrecarga y evita que se generen eventos para los métodos que están dentro de los módulos NGen. A partir de .NET Framework 4.5, las herramientas de generación de perfiles deben usar conjuntamente OverrideAndSuppressNGenEventsKeyword y NGenKeyword a fin de suprimir la generación de eventos para los métodos de módulos NGen. Esto permite que la herramienta de generación de perfiles use de forma más eficaz los archivos PDB de NGen para obtener información sobre los métodos de módulos NGen. En .NET Framework 4 y versiones anteriores, el CLR no admite la creación de archivos PDB de NGen. En estas versiones anteriores, el CLR no reconocerá OverrideAndSuppressNGenEventsKeyword y procesará NGenKeyword para generar eventos para los métodos de módulos NGen. |
PerfTrackKeyWord |
0x2000000 | Habilita la recopilación de eventos ModuleLoad y ModuleRange . |
StackKeyword |
0x40000000 | Habilita la recopilación de eventos de seguimiento de pilade CLR. |
Palabras clave de detención de ETW de CLR
En la tabla siguiente se enumeran las palabras clave de detención de ETW de CLR, sus valores y se explica para qué se usan.
Nombre de la palabra clave de detención | Value | Propósito |
---|---|---|
LoaderRundownKeyword |
0x00000008 | Habilita la recopilación de eventos de cargador cuando se usa con StartRundownKeyword y EndRundownKeyword . |
JitRundownKeyword |
0x00000010 | Habilita la recopilación de eventos de método DCStart y DCEnd para métodos compilados JIT cuando se usa con StartRundownKeyword y EndRundownKeyword . |
NGenRundownKeyword |
0x00000020 | Habilita la recopilación de eventos de método DCStart y DCEnd para métodos de imágenes nativas de NGen cuando se usa con StartRundownKeyword y EndRundownKeyword . Esta palabra clave tiene una gran sobrecarga. Genera eventos para todos los métodos que se encuentran en los módulos cargados de NGen. Siempre que sea posible, en lugar de usar esta palabra clave, le recomendamos que use las bases de datos de programa (PDB) generadas por herramientas de generación de perfiles para recuperar información acerca de los métodos de los módulos NGen. Vea también OverrideAndSuppressNGenEventsRundownKeyword más adelante en esta tabla. |
StartRundownKeyword |
0x00000040 | Habilita la enumeración del estado del sistema durante una detención de inicio. |
EndRundownKeyword |
0x00000100 | Habilita la enumeración del estado del sistema durante una detención de final. |
AppDomainResourceManagementRundownKeyword |
0x00000800 | Habilita la recopilación de eventos de supervisión de recursos en un nivel de AppDomain cuando se usa con StartRundownKeyword o EndRundownKeyword . |
ThreadingKeyword |
0x00010000 | Habilita la recopilación de eventos de grupo de subprocesos. |
OverrideAndSuppressNGenEventsRundownKeyword |
0x00040000 | (Disponible en .NET Framework 4.5 y posteriores) Suprime la palabra clave NGenRundownKeyword de elevada sobrecarga y evita que se generen eventos para los métodos que están dentro de los módulos NGen. A partir de .NET Framework 4.5, las herramientas de generación de perfiles deben usar conjuntamente OverrideAndSuppressNGenEventsRundownKeyword y NGenRundownKeyword a fin de suprimir la generación de eventos para los métodos de módulos NGen. Esto permite que la herramienta de generación de perfiles use de forma más eficaz los archivos PDB de NGen para obtener información sobre los métodos de módulos NGen. En .NET Framework 4 y versiones anteriores, el CLR no admite la creación de archivos PDB de NGen. En estas versiones anteriores, el CLR no reconocerá OverrideAndSuppressNGenEventsRundownKeyword y procesará NGenRundownKeyword para generar eventos para los métodos de módulos NGen. |
PerfTrackKeyWord |
0x2000000 | Habilita la recopilación de eventos ModuleDCStart , ModuleDCEnd , ModuleRangeDCStart y ModuleRangeDCEnd . |
Combinaciones de palabras clave para la resolución de símbolos para el proveedor de runtime
Palabras clave y marcas | Dominio de aplicación, ensamblado, eventos de carga/descarga de módulos | Eventos de carga/descarga de método (excepto eventos dinámicos) | Eventos de carga/destrucción de métodos dinámicos |
---|---|---|---|
LoaderKeyword |
Eventos de carga y descarga. | Ninguno. | Ninguno. |
JITKeyword (+ StartEnumerationKeyword no agrega nada) |
Ninguno. | Eventos de carga. | Eventos de carga y descarga. |
JITKeyword +EndEnumerationKeyword |
Ninguno. | Eventos de carga y descarga. | Eventos de carga y descarga. |
NGenKeyword |
Ninguno. | Ninguno. | No aplicable. |
NGenKeyword +StartEnumerationKeyword |
Ninguno. | Eventos de carga. | No aplicable. |
NGenKeyword +EndEnumerationKeyword |
Ninguno. | Eventos de descarga. | No aplicable. |
Combinaciones de palabras clave para la resolución de símbolos para el proveedor de detención
Palabras clave y marcas | Dominio de aplicación, ensamblado, eventos DCStart/DCEnd de módulos | Eventos DCStart/DCEnd de método (incluidos los eventos de métodos dinámicos) |
---|---|---|
LoaderRundownKeyword +StartRundownKeyword |
EventosDCStart . |
Ninguno. |
LoaderRundownKeyword +EndRundownKeyword |
EventosDCEnd . |
Ninguno. |
JITKeyword +StartRundownKeyword |
Ninguno. | EventosDCStart . |
JITKeyword +EndRundownKeyword |
Ninguno. | EventosDCEnd . |
NGenKeyword +StartRundownKeyword |
Ninguno. | EventosDCStart . |
NGenKeyword +EndRundownKeyword |
Ninguno. | EventosDCEnd . |
Niveles de eventos ETW
Los eventos ETW también se pueden filtrar por nivel. Si el nivel se establece en 0x5, se generan eventos de todos los niveles, incluidos 0 x 5 e inferiores (que son eventos que pertenecen a las categorías habilitadas mediante palabras clave). Si el nivel se establece en 0x2, tan solo se producen los eventos que pertenecen al nivel 0x2 e inferiores.
Los niveles tienen los significados siguientes:
0x5: Verbose
0x4: Informativo
0x3: Advertencia
0x2: Error
0x1: Crítico
0x0: LogAlways