Comparteix a través de


Proveedores de eventos conocidos en .NET

Las bibliotecas y el entorno de ejecución de .NET escriben eventos de diagnóstico a través de varios proveedores de eventos. En función de sus necesidades de diagnóstico, puede elegir los proveedores adecuados que quiere habilitar. En este artículo se describen algunos de los proveedores de eventos que se usan con más frecuencia en las bibliotecas y en el entorno de ejecución de .NET.

CoreCLR

Proveedor "Microsoft-Windows-DotNETRuntime"

Este proveedor emite varios eventos desde el entorno de ejecución de .NET, incluidos eventos de recolección de elementos no utilizados (GC), eventos de cargador, eventos Just-In-Time (JIT), eventos de excepción y otros. Obtenga más información sobre cada evento de este proveedor en la lista de eventos del proveedor del entorno de ejecución.

Proveedor "Microsoft-DotNETCore-SampleProfiler"

Este proveedor proporciona eventos del entorno de ejecución de .NET y se usa para el muestreo de la CPU para pilas de llamadas administradas. Cuando está habilitado, captura una instantánea de la pila de llamadas administrada de cada subproceso cada milisegundo. Para habilitar esta captura, debe especificar un EventLevel (nivel de evento) Informational o superior.

Bibliotecas del marco

Proveedor "Microsoft-Extensions-DependencyInjection"

Este proveedor registra información de DependencyInjection. En la tabla siguiente se muestran los eventos que registra el proveedor Microsoft-Extensions-DependencyInjection:

Nombre del evento Palabra clave Nivel Descripción
CallSiteBuilt Detallado (5) Se ha creado un sitio de llamada.
ServiceResolved Detallado (5) Se ha resuelto un servicio.
ExpressionTreeGenerated Detallado (5) Se ha generado un árbol de expresión.
DynamicMethodBuilt Detallado (5) Se ha compilado un método dinámico (DynamicMethod).
ScopeDisposed Detallado (5) Se ha eliminado un ámbito.
ServiceRealizationFailed Detallado (5) Error en la realización de un servicio.
ServiceProviderBuilt ServiceProviderInitialized(0x1) Detallado (5) Se ha compilado un método dinámico (ServiceProvider).
ServiceProviderDescriptors ServiceProviderInitialized(0x1) Detallado (5) Lista de ServiceDescriptor que se ha usado durante la compilación de ServiceProvider.

Proveedor "System.Buffers.ArrayPoolEventSource"

Este proveedor registra información de ArrayPool. En la siguiente tabla se muestran los eventos que registra ArrayPoolEventSource:

Nombre del evento Nivel Descripción
BufferRented Detallado (5) Un búfer se ha alquilado correctamente.
BufferAllocated Informativo (4) El grupo ha asignado un búfer.
BufferReturned Detallado (5) Se ha devuelto un búfer al grupo.
BufferTrimmed Informativo (4) Se ha intentado liberar un búfer por inactividad o por falta de memoria.
BufferTrimPoll Informativo (4) Se está realizando una comprobación para recortar los búferes.
BufferDropped Informativo (4) Cuando se devuelve al grupo, se quita un búfer.

Proveedor "System.Net.Http"

Este proveedor registra información de la pila HTTP. En la siguiente tabla se muestran los eventos que registra el proveedor System.Net.Http:

Nombre del evento Nivel Descripción
RequestStart Informativo (4) Se ha iniciado una solicitud HTTP.
RequestStop Informativo (4) Ha finalizado una solicitud HTTP.
RequestFailed Error (2) Se ha producido un error en una solicitud HTTP.
ConnectionEstablished Informativo (4) Se ha establecido una conexión HTTP.
ConnectionClosed Informativo (4) Se ha cerrado una conexión HTTP.
RequestLeftQueue Informativo (4) Una solicitud HTTP ha abandonado la cola de solicitudes.
RequestHeadersStart Informativo (4) Se ha iniciado una solicitud HTTP para el encabezado.
RequestHeaderStop Informativo (4) Ha finalizado una solicitud HTTP para el encabezado.
RequestContentStart Informativo (4) Se ha iniciado una solicitud HTTP para el contenido.
RequestContentStop Informativo (4) Ha finalizado una solicitud HTTP para el contenido.
ResponseHeadersStart Informativo (4) Se ha iniciado una respuesta HTTP para el encabezado.
ResponseHeaderStop Informativo (4) Ha finalizado una respuesta HTTP para el encabezado.
ResponseContentStart Informativo (4) Se ha iniciado una respuesta HTTP para el contenido.
ResponseContentStop Informativo (4) Ha finalizado una respuesta HTTP para el contenido.

Proveedor "System.Net.NameResolution"

Este proveedor registra información relacionada con la resolución de nombres de dominio. En la siguiente tabla se muestran los eventos que registra System.Net.NameResolution:

Nombre del evento Nivel Descripción
ResolutionStart Informativo (4) Se ha iniciado una resolución de nombres de dominio.
ResolutionStop Informativo (4) Ha finalizado una resolución de nombres de dominio.
ResolutionFailed Informativo (4) No se ha podido resolver el nombre de dominio.

Proveedor "System.Net.Sockets"

Este proveedor registra información de Socket. En la siguiente tabla se muestran los eventos que registra el proveedor System.Net.Sockets:

Nombre del evento Nivel Descripción
ConnectStart Informativo (4) Se ha iniciado un intento de iniciar una conexión de socket.
ConnectStop Informativo (4) Ha finalizado un intento de iniciar una conexión de socket.
ConnectFailed Informativo (4) Se ha producido un error al tratar de iniciar una conexión de socket.
AcceptStart Informativo (4) Se ha iniciado un intento de aceptar una conexión de socket.
AcceptStop Informativo (4) Ha finalizado un intento de aceptar una conexión de socket.
AcceptFailed Informativo (4) Se ha producido un error al tratar de aceptar una conexión de socket.

Proveedor "System.Threading.Tasks.TplEventSource"

Este proveedor registra información sobre la biblioteca TPL, como los eventos del Programador de tareas. En la siguiente tabla se muestran los eventos que registra TplEventSource:

Nombre del evento Palabra clave Nivel Descripción
TaskScheduled TaskTransfer(0x1)

Tasks(0x2)
Informativo (4) Un objeto Task se ha puesto en cola en el Programador de tareas.
TaskStarted Tasks(0x2) Informativo (4) Se ha iniciado la ejecución de un objeto Task.
TaskCompleted TaskStops(0x40) Informativo (4) Un objeto Task ha terminado de ejecutarse.
TaskWaitBegin TaskTransfer(0x1)

TaskWait(0x2)
Informativo (4) Se desencadena cuando se inicia una espera implícita o explícita para la finalización de un objeto Task.
TaskWaitEnd Tasks(0x2) Detallado (5) Se desencadena cuando se devuelve la espera para la finalización de un objeto Task.
TaskWaitContinuationStarted Tasks(0x2) Detallado (5) Se desencadena cuando se inicia el trabajo (método) asociado a un objeto TaskWaitEnd.
TaskWaitContinuationCompleted TaskStops(0x40) Detallado (5) Se desencadena cuando se completa el trabajo (método) asociado a un objeto TaskWaitEnd.
AwaitTaskContinuationScheduled TaskTransfer(0x1)

Tasks(0x2)
Informativo (4) Se desencadena cuando se programa una continuación asincrónica para un objeto Task.

ASP.NET Core

ASP.NET Core también proporciona varios eventos para ayudarle a diagnosticar problemas en la pila de ASP.NET Core.

Para obtener más información sobre los eventos en ASP.NET Core y cómo consumirlos, consulte el artículo Registros en .NET Core y ASP.NET Core.

Entity Framework Core

EF Core también proporciona eventos para ayudarle a diagnosticar problemas en EF Core.

Para obtener más información sobre los eventos en EFCore y cómo consumirlos, consulte Eventos de .NET en EF Core.