Requisitos previos

Configuración del SDK de OpenTelemetry

Si has instrumentado tus aplicaciones .NET con la instrumentación automática de OpenTelemetry, se habilitan automáticamente las métricas de tiempo de ejecución.

Si has instrumentado tu aplicación .NET con la instrumentación manual de OpenTelemetry, consulta la documentación de biblioteca de OpenTelemetry.Instrumentation.Runtime.

El intervalo de exportación predeterminado de métricas para el SDK de .NET OTel es diferente del intervalo predeterminado del SDK de Datadog .NET. Datadog recomienda configurar la variable de entorno OTEL_METRIC_EXPORT_INTERVAL en tu servicio de .NET para que coincida con el intervalo de exportación predeterminado de métricas de Datadog para ver los gráficos de métrica de integración:

  • OTEL_METRIC_EXPORT_INTERVAL=10000

Asignaciones de métricas de tiempos de ejecución

La siguiente tabla enumera las métricas de tiempo de ejecución de Datadog que son compatibles con la asignación de métricas de tiempo de ejecución de OpenTelemetry con “N/A” indicando que no hay homólogo de OpenTelemetry.

Métrica de DatadogDescripciónHomólogo de OpenTelemetry
runtime.dotnet.threads.contention_countEl número de veces que un subproceso se detuvo para esperar un bloqueo.process.runtime.dotnet.
monitor.lock_contention.count
runtime.dotnet.exceptions.countEl número de excepciones por primera vez.process.runtime.dotnet.
exceptions.count
runtime.dotnet.gc.size.gen0El tamaño del heap de generación 0.process.runtime.dotnet.
gc.heap.size
runtime.dotnet.gc.size.gen1El tamaño del heap de generación 1.process.runtime.dotnet.
gc.heap.size
runtime.dotnet.gc.size.gen2El tamaño del heap de generación 2.process.runtime.dotnet.
gc.heap.size
runtime.dotnet.gc.size.lohEl tamaño del heap de grandes objetos.process.runtime.dotnet.
gc.heap.size
runtime.dotnet.gc.count.gen0El número de recopilaciones de elementos no usados de generación 0.process.runtime.dotnet.
gc.collections.count
runtime.dotnet.gc.count.gen1El número de recopilaciones de elementos no usados de generación 1.process.runtime.dotnet.
gc.collections.count
runtime.dotnet.gc.count.gen2El número de recopilaciones de elementos no usados de generación 2.process.runtime.dotnet.
gc.collections.count
runtime.dotnet.cpu.systemEl número de milisegundos de ejecución en el kernel.N/A
runtime.dotnet.cpu.userEl número de milisegundos de ejecución fuera del kernel.N/A
runtime.dotnet.cpu.percentEl porcentaje de CPU total utilizado por la aplicación.N/A
runtime.dotnet.mem.committedUso de memoria.N/A
runtime.dotnet.threads.countEl número de subprocesos.N/A
runtime.dotnet.threads.workers_countEl número de trabajadores en el grupo de subprocesos. (Solo.NET Core)N/A
runtime.dotnet.threads.contention_timeEl tiempo acumulado que pasan los subprocesos esperando un bloqueo. (Solo .NET Core)N/A
runtime.dotnet.gc.memory_loadEl porcentaje de la memoria total utilizada por el proceso. La recopilación de elementos no usados (GC) cambia su comportamiento cuando este valor supera el 85. (Solo .NET Core)N/A
runtime.dotnet.gc.pause_timeLa cantidad de tiempo que la GC pausó los subprocesos de la aplicación. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
requests.total
El número total de solicitudes HTTP recibidas por el servidor. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
requests.failed
El número de solicitudes HTTP fallidas recibidas por el servidor. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
requests.current
El número total de solicitudes HTTP que se han iniciado, pero aún no se han detenido. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
requests.queue_length
La longitud actual de la cola de solicitudes HTTP del servidor. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
connections.total
El número total de conexiones HTTP establecidas con el servidor. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
connections.current
El número actual de conexiones HTTP activas al servidor. (Solo .NET Core)N/A
runtime.dotnet.aspnetcore.
connections.queue_length
La longitud actual de la cola de conexión del servidor HTTP. (Solo .NET Core)N/A