Eventos ETW de método
Estos eventos recopilan información que es específica de los métodos. La carga de estos eventos es necesaria para la resolución de símbolos. Además, estos eventos proporcionan información útil como el número de veces que se llama a un método.
Todos los eventos de método tienen un nivel de “Informativo (4)”. Todos los eventos detallados de método tienen un nivel de “Detallado (5)”.
Todos los eventos de método se generan mediante la palabra clave JITKeyword
(0x10) o la palabra clave NGenKeyword
(0x20) con el proveedor de runtime, o JitRundownKeyword
(0x10) o NGENRundownKeyword
(0x20) con el proveedor de detención.
Eventos de método CLR
En la tabla siguiente se muestra la palabra clave y el nivel. Para más información, vea Palabras clave y niveles ETW de CLR.
Palabra clave para generar el evento | Nivel |
---|---|
JITKeyword (0x10) |
Informativo (4) |
NGenKeyword (0x20) |
Informativo (4) |
JitRundownKeyword (0x10) |
Informativo (4) |
NGENRundownKeyword (0x20) |
Informativo (4) |
En la siguiente tabla se muestra la información del evento.
Evento | Id. de evento | Descripción |
---|---|---|
MethodLoad_V1 |
136 | Se genera cuando un método se carga just-in-time (carga JIT) o se carga una imagen NGEN. Los métodos dinámicos y genéricos no usan esta versión para cargas de método. Los asistentes de JIT nunca usan esta versión. |
MethodUnLoad_V1 |
137 | Se genera cuando se descarga un módulo o se destruye un dominio de aplicación. Los métodos dinámicos nunca usan esta versión para descargas de método. |
MethodDCStart_V1 |
137 | Enumera los métodos durante una detención de inicio. |
MethodDCEnd_V1 |
138 | Enumera los métodos durante una detención de fin. |
En la siguiente tabla, se muestran los datos del evento:
Nombre del campo | Tipo de datos | Descripción |
---|---|---|
MethodID | win:UInt64 | Identificador único de un método. Para los métodos del asistente JIT, se establece en la dirección de inicio del método. |
ModuleID | win:UInt64 | Identificador del módulo al que pertenece este método (0 para asistentes de JIT). |
MethodStartAddress | win:UInt64 | Dirección de inicio del método. |
MethodSize | win:UInt32 | Tamaño del método. |
MethodToken | win:UInt32 | 0 para métodos dinámicos y asistentes de JIT. |
MethodFlags | win:UInt32 | 0x1: método dinámico. 0x2: método genérico. 0x4: método de código compilado JIT (en caso contrario, código de imagen nativa de NGEN). 0x8: método del asistente. |
ClrInstanceID | win:UInt16 | Identificador único para la instancia de CLR o CoreCLR. |
Eventos de marcador de método CLR
Además, estos eventos solo se generan con el proveedor de detención y significan el final de la enumeración de método durante una detención de inicio o fin. (Es decir, se generan cuando la palabra clave NGENRundownKeyword
, JitRundownKeyword
, LoaderRundownKeyword
o AppDomainResourceManagementRundownKeyword
está habilitada.)
En la tabla siguiente se muestra la palabra clave y el nivel.
Palabra clave para generar el evento | Nivel |
---|---|
AppDomainResourceManagementRundownKeyword (0x800) |
Informativo (4) |
JitRundownKeyword (0x10) |
Informativo (4) |
NGENRundownKeyword (0x20) |
Informativo (4) |
En la siguiente tabla se muestra la información del evento.
Evento | Id. de evento | Descripción |
---|---|---|
DCStartInit_V1 |
147 | Se envía antes del inicio de la enumeración durante un informe detallado de inicio. |
DCStartComplete_V1 |
145 | Se envía al final de la enumeración durante un informe detallado de inicio. |
DCEndInit_V1 |
148 | Se envía antes del inicio de la enumeración durante un informe detallado de fin. |
DCEndComplete_V1 |
146 | Se envía al final de la enumeración durante un informe detallado de fin. |
En la siguiente tabla, se muestran los datos del evento:
Nombre del campo | Tipo de datos | Descripción |
---|---|---|
ClrInstanceID | win:UInt16 | Identificador único para la instancia de CLR o CoreCLR. |
Eventos detallados de método CLR
En la tabla siguiente se muestra la palabra clave y el nivel.
Palabra clave para generar el evento | Nivel |
---|---|
JITKeyword (0x10) |
Detallado (5) |
NGenKeyword (0x20) |
Detallado (5) |
JitRundownKeyword (0x10) |
Detallado (5) |
NGENRundownKeyword (0x20) |
Detallado (5) |
En la siguiente tabla se muestra la información del evento.
Evento | Id. de evento | Descripción |
---|---|---|
MethodLoadVerbose_V1 |
143 | Se genera cuando la carga de un método es JIT o se carga una imagen NGEN. Los métodos dinámicos y genéricos siempre usan esta versión para cargas de método. Los asistentes de JIT siempre usan esta versión. |
MethodUnLoadVerbose_V1 |
144 | Se genera cuando se destruye un método dinámico, se descarga un módulo o se destruye un dominio de aplicación. Los métodos dinámicos siempre usan esta versión para descargas de método. |
MethodDCStartVerbose_V1 |
141 | Enumera los métodos durante una detención de inicio. |
MethodDCEndVerbose_V1 |
142 | Enumera los métodos durante una detención de fin. |
En la siguiente tabla, se muestran los datos del evento:
Nombre del campo | Tipo de datos | Descripción |
---|---|---|
MethodID | win:UInt64 | Identificador único del método. Para los métodos del asistente JIT, se establece en la dirección de inicio del método. |
ModuleID | win:UInt64 | Identificador del módulo al que pertenece este método (0 para asistentes de JIT). |
MethodStartAddress | win:UInt64 | Dirección de inicio. |
MethodSize | win:UInt32 | Longitud de método. |
MethodToken | win:UInt32 | 0 para métodos dinámicos y asistentes de JIT. |
MethodFlags | win:UInt32 | 0x1: método dinámico. 0x2: método genérico. 0 x 4: método compilado JIT (de lo contrario, generado por NGen.exe) 0x8: método del asistente. |
MethodNameSpace | win:UnicodeString | Nombre del espacio de nombres completo que está asociado al método. |
MethodName | win:UnicodeString | Nombre de clase completo que está asociado al método. |
MethodSignature | win:UnicodeString | Signatura del método (lista separada por comas de nombres de tipo). |
ClrInstanceID | win:UInt16 | Identificador único para la instancia de CLR o CoreCLR. |
Evento MethodJittingStarted
En la tabla siguiente se muestra la palabra clave y el nivel.
Palabra clave para generar el evento | Nivel |
---|---|
JITKeyword (0x10) |
Detallado (5) |
NGenKeyword (0x20) |
Detallado (5) |
JitRundownKeyword (0x10) |
Detallado (5) |
NGENRundownKeyword (0x20) |
Detallado (5) |
En la siguiente tabla se muestra la información del evento.
Evento | Id. de evento | Descripción |
---|---|---|
MethodJittingStarted |
145 | Se genera cuando se está realizando la compilación JIT de un método. |
En la siguiente tabla, se muestran los datos del evento:
Nombre del campo | Tipo de datos | Descripción |
---|---|---|
MethodID | win:UInt64 | Identificador único del método. |
ModuleID | win:UInt64 | Identificador del módulo al que pertenece este método. |
MethodToken | win:UInt32 | 0 para métodos dinámicos y asistentes de JIT. |
MethodILSize | win:UInt32 | Tamaño del lenguaje intermedio común (CIL) para el método que se está compilando JIT. |
MethodNameSpace | win:UnicodeString | Nombre de clase completo que está asociado al método. |
MethodName | win:UnicodeString | Nombre del método. |
MethodSignature | win:UnicodeString | Signatura del método (lista separada por comas de nombres de tipo). |
ClrInstanceID | win:UInt16 | Identificador único para la instancia de CLR o CoreCLR. |