En este artículo se describen las métricas integradas para ASP.NET Core generadas mediante la API System.Diagnostics.Metrics. Para obtener una lista de métricas basadas en la API EventCounters anterior, consulte aquí.
Sugerencia
Para más información sobre cómo recopilar, notificar, enriquecer y probar métricas de ASP.NET Core, vea Uso de métricas de ASP.NET Core.
Microsoft.AspNetCore.Hosting
Las métricas Microsoft.AspNetCore.Hosting notifican información de alto nivel sobre las solicitudes HTTP recibidas por ASP.NET Core:
Versión del protocolo especificado en network.protocol.name.
3.1.1
Siempre
url.scheme
cadena
Componente de esquema de URI que identifica el protocolo usado.
http; https
Siempre
aspnetcore.request.is_unhandled
Booleano
Verdadero cuando la canalización de la aplicación no controla la solicitud.
true
Si la solicitud no se ha controlado.
El tiempo usado para controlar una solicitud HTTP entrante como se mide en la capa de hospedaje de ASP.NET Core. La medida de tiempo se inicia una vez que el host web subyacente:
Ha analizado suficientemente los encabezados de solicitud HTTP en el flujo de red entrante para identificar la nueva solicitud.
Ha inicializado las estructuras de datos de contexto, como HttpContext.
El tiempo finaliza cuando:
La canalización del controlador de ASP.NET Core ha terminado de ejecutarse.
Se han enviado todos los datos de respuesta.
Se han eliminado las estructuras de datos de contexto de la solicitud.
Cuando se usa OpenTelemetry, los cubos predeterminados para esta métrica se establecen en [ 0,005, 0,01, 0,025, 0,05, 0,075, 0,1, 0,25, 0,5, 0,75, 1, 2,5, 5, 7,5, 10 ].
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
example.com
Siempre
server.port
int
Número de puerto del servidor
80; 8080; 443
Si el transporte es tcp o udp.
tls.protocol.version
cadena
Versión del protocolo TLS.
1.2; 1.3
Si la conexión está protegida con TLS.
Dado que esta métrica realiza un seguimiento de la duración de la conexión e, idealmente, las conexiones HTTP se usan para varias solicitudes, los cubos deben ser más largos que los usados durante las solicitudes. Por ejemplo, el uso de [ 0,01, 0,02, 0,05, 0,1, 0,2, 0,5, 1, 2, 5, 10, 30, 60, 120, 300 ] proporciona un cubo superior de 5 minutos.
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
example.com
Siempre
server.port
int
Número de puerto del servidor
80; 8080; 443
Si el transporte es tcp o udp.
Las conexiones se rechazan cuando el recuento activo supera el valor configurado con MaxConcurrentConnections.
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
example.com
Siempre
server.port
int
Número de puerto del servidor
80; 8080; 443
Si el transporte es tcp o udp.
El contador solo realiza un seguimiento de las conexiones HTTP/1.1.
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
example.com
Siempre
server.port
int
Número de puerto del servidor
80; 8080; 443
Si el transporte es tcp o udp.
tls.protocol.version
cadena
Versión del protocolo TLS.
1.2; 1.3
Si la conexión está protegida con TLS.
Cuando se usa OpenTelemetry, los cubos predeterminados para esta métrica se establecen en [ 0,005, 0,01, 0,025, 0,05, 0,075, 0,1, 0,25, 0,5, 0,75, 1, 2,5, 5, 7,5, 10 ].
Nombre de dominio de dirección del servidor si está disponible sin búsqueda inversa de DNS; de lo contrario, dirección IP o nombre del socket de dominio de Unix.
example.com
Siempre
server.port
int
Número de puerto del servidor
80; 8080; 443
Si el transporte es tcp o udp.
Disponible a partir de: .NET 8.0.
Microsoft.AspNetCore.Http.Connections
Las métricas Microsoft.AspNetCore.Http.Connections notifican información de conexión de SignalR de ASP.NET Core:
Dado que esta métrica realiza un seguimiento de la duración de la conexión e, idealmente, las conexiones de SignalR son duraderas, los cubos deben ser más largos que los usados durante las solicitudes. Por ejemplo, el uso de [ 0, 0,01, 0,02, 0,05, 0,1, 0,2, 0,5, 1, 2, 5, 10, 30, 60, 120, 300 ] proporciona un cubo superior de 5 minutos.
El origen de este contenido se puede encontrar en GitHub, donde también puede crear y revisar problemas y solicitudes de incorporación de cambios. Para más información, consulte nuestra guía para colaboradores.