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, LoaderRundownKeywordo 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.

Consulte también