El rastreador Datadog. NET es compatible con todos los lenguajes basados en .NET (por ejemplo, C#, F#, Visual Basic). Tiene compatibilidad en fase de vista previa para aplicaciones recortadas.

El rastreador .NET es de código abierto. Para más información, consulta el repositorio del rastreador .NET.

Tiempos de ejecución de .NET y .NET Core compatibles

El rastreador .NET es compatible con la instrumentación automática en las siguientes versiones de .NET y .NET Core. También es compatible con .NET Framework.

Versión .NETFin de vida de MicrosoftNivel de compatibilidadVersión del paquete
.NET 9GAmás reciente (>= 3.6.0)
.NET 8GAMás reciente (>= 2.42.0)
.NET 705/14/2024GAMás reciente (>= 2.20.0)
.NET 6GAMás reciente (>= 2.0.0)
.NET 505/10/2022GAMás reciente (>= 2.0.0)
.NET Core 3.112/13/2022GAúltima
.NET Core 3.003/03/2020EOLNo recomendado
.NET Core 2.212/23/2019EOLNo recomendado
.NET Core 2.108/21/2021EOLNo recomendado
.NET Core 2.010/01/2018EOLNo recomendado

Puedes encontrar información adicional en la política de ciclo de vida de .NET y .NET Core de Microsoft, versiones de tiempo de ejecución del fin de soporte de .NET y política de compatibilidad del tiempo de ejecución de .NET.

Arquitecturas de procesador compatibles

El rastreador de .NET es compatible con la instrumentación automática en las siguientes arquitecturas:

Arquitecturas de procesadoresNivel de compatibilidadVersión del paquete
Windows x64 (win-x64)GAúltima
Windows x86 (win-x86)GA< 3.0.0 (por ejemplo, 2.56.0)
Linux x64 (linux-x64)GAúltima
Alpine Linux x64 (linux-musl-x64)GAúltima
Linux ARM64 (linux-arm64)GA.NET 5+ solamente, añadido en la versión 1.27.0
Alpine Linux arm64 (linux-musl-arm64)GA.NET 6+ solamente, añadido en la versión 3.2.0

Ten en cuenta que es posible ejecutar aplicaciones de 32 bits en Windows x64.

Sistemas operativos compatibles

El rastreador de .NET es compatible con la instrumentación automática en los sistemas operativos Windows y Linux. Solo es compatible con macOS para la CI Test Optimization.

Windows

Sistema operativoVersiónNivel de compatibilidadVersión del paquete
Windows Server (x64)2012+GAúltima
Windows Client (x64)8.1+GAúltima
Nano Server (x64)< 2012EOL< 3.0.0 (por ejemplo, 2.48.0)
Windows Server (x64)< 2012EOL< 3.0.0 (por ejemplo, 2.48.0)
Windows Server (x86)Todas las versionesEOL< 3.0.0 (por ejemplo, 2.48.0)

Encontrarás más información sobre los sistemas operativos compatibles con .NET y .NET Core en las notas de versión de .NET.

Linux

El rastreador de .NET es compatible con las distribuciones de Linux como mejor esfuerzo, basándose en la compatibilidad mínima de la versión libc:

  • x64: glibc 2.17 (from CentOS 7)
  • Arm64: glibc 2.23 (de Debian 10)
  • Alpine x64: musl 1.2.2 (de Alpine 3.14)
  • Alpine arm64: musl 1.2.4 (de Alpine 3.18)
Sistema operativoVersiónArquitecturasNivel de compatibilidadVersión del paquete
Alpine Linux (x64)3.14+x64,GAmás reciente (sólo .NET 5+, v1.27.0+)
Alpine Linux (arm64)3.18+Arm64GAmás reciente (sólo .NET 6+, v3.2.0+)
CentOS Linux7+x64Mantenimientomás reciente (EOL en v4.0.0)
CentOS Stream Linux8x64Mantenimientomás reciente (EOL en v4.0.0)
Debian10+x64, Arm64GAúltima
Fedora29+x64GAúltima
openSUSE15+x64GAúltima
Red Hat Enterprise Linux7+x64GAúltima
Ubuntu18.04+x64, Arm64GAúltima

macOS

El rastreador de .NET sólo es compatible con macOS para CI Test Optimization

Sistema operativoVersiónArquitecturasNivel de compatibilidadVersión del paquete
macOS12.0+x64, Arm64GAúltima
macOS11.0x64EOL< 3.0.0
macOS11.0Arm64EOL< 3.0.0 (Añadido en 2.20.0)

Integraciones

La última versión del rastreador .NET puede instrumentar automáticamente las siguientes bibliotecas:

Marco o bibliotecaPaquete NuGetNombre de la integración
ADO.NETTodas las integraciones de AdoNetAdoNet
AerospikeAerospike.Client 4.0.0+Aerospike
ASP.NET CoreMicrosoft.AspNetCore
Microsoft.AspNetCore.App
2.0+ y 3.0+
AspNetCore
Azure FunctionsMicrosoft.Azure.Webjobs 3.0+AzureFunctions
Amazon DynamoDBAWSSDK.DynamoDBv2 3.0+AwsDynamoDb
Amazon KinesisAWSSDK.Kinesis 3.0+AwsKinesis
Amazon SNSAWSSDK.SNS 3.0+AwsSns
Amazon SQSAWSSDK.SQS 3.0+AwsSqs
CosmosDbMicrosoft.Azure.Cosmos 3.6.0+CosmosDb
CouchbaseCouchbaseNetClient 2.2.8+Couchbase
ElasticsearchElasticsearch.Net 5.3.0+ElasticsearchNet
GraphQL .NETGraphQL 2.3.0+GraphQL
gRPCGrpc.Net.Client2.30.0+ (solo .NET Core 3.0+)
Grpc.Core 2.30.0+
Grpc.AspNetCore 2.30.0+
Grpc
HotChocolateHotChocolate 11.0.0+HotChocolate
HttpClient/HttpMessageHandlerSystem.Net.Http 4.0+HttpMessageHandler
KafkaConfluent.Kafka 1.4+Kafka
IBM MQamqmdnetstd 9.0.0+IbmMq
MongoDBMongoDB.Driver.Core 2.1.0+MongoDb
MySqlMySql.Data 6.7.0+
MySqlConnector 0.61.0+
MySql
OracleOracle.ManagedDataAccess 4.122.0+Oracle
PostgreSQLNpgsql 4.0+Npgsql
Process"System.Diagnostics.Process" 4.0+Process
RabbitMQRabbitMQ.Client 3.6.9+ .RabbitMQ
Redis (cliente de ServiceStack)ServiceStack.Redis 4.0.48+ServiceStackRedis
Redis (cliente de StackExchange)StackExchange.Redis 1.0.187+StackExchangeRedis
Service Fabric RemotingMicrosoft.ServiceFabric.Services.Remoting 4.0.470+ServiceRemoting
SQLiteSystem.Data.Sqlite 2.0.0+
Microsoft.Data.Sqlite 1.0.0+
Sqlite
SQL ServerSystem.Data 4.0.0+
System.Data.SqlClient 4.0.0+
Microsoft.Data.SqlClient 1.0.0+
SqlClient
WebClient/WebRequestSystem.Net.Requests 4.0+WebRequest

¿No ves la biblioteca que buscas? En primer lugar, comprueba si la biblioteca produce datos de observabilidad compatibles con OpenTelemetry (consulta Uso de bibliotecas de instrumentación de OpenTelemetry para obtener más detalles). Si no, Datadog está continuamente sumando compatibilidad. Contacta con el equipo de Datadog para obtener ayuda.

Fin de soporte de las versiones de ejecución de .NET

El rastreador .NET funciona en .NET Core 2.0, 2.1, 2.2, 3.0 y 3.1, y en .NET 5 y 7, pero estas versiones llegaron al final de soporte y ya no son compatibles con Microsoft. Para más información, consulta la política de compatibilidad de Microsoft. Datadog recomienda utilizar la última versión de parches de .NET 6 o .NET 8. Las versiones más antiguas de .NET y .NET Core pueden encontrarse con los siguientes problemas de tiempo de ejecución al activar la instrumentación automática:

ProblemaVersiones .NET afectadasSoluciónMás información
Error del compilador JIT en Linux/x642.0.x,
2.1.0-2.1.11,
2.2.0-2.2.5
Actualiza .NET Core a la última versión del parche, o sigue los pasos indicados en el tema enlazadoDataDog/dd-trace-dotnet/issues/302
Error en la búsqueda de recursos con una configuración regional distinta de en-US2.0.0Actualiza .NET Core a 2.0.3 o posteriordotnet/runtime/issues/23938
Error en el compilador JIT que provoca un bloqueo al apagarse2.0.0-2.2.xActualiza .NET Core a 3.1.0 o posteriordotnet/runtime/pull/11885
Error en el compilador JIT2.x, 3.x, 5.x, 6.x, 7.x, 8.0.0-8.0.5Actualiza .NET a 8.0.6 o posteriordotnet/runtime/pull/73760
Error en el compilador JITTodas las versiones de .NETNo hay solucióndotnet/runtime/issues/85777
Error de tiempo de ejecución de .NET que causa bloqueos cuando se utiliza con métricas de tiempo de ejecución6.0.0-6.0.10Actualiza a .NET 6.0.11 o posterior, o desactiva las métricas de tiempo de ejecucióndotnet/runtime/pull/76431

Versiones compatibles del Datadog Agent

Versión del Datadog AgentVersión del paquete
7.xÚltimo
6.xÚltimo
5.xÚltimo

Política de compatibilidad del tiempo de ejecución de .NET

El rastreador .NET depende del sistema operativo del host, del tiempo de ejecución de .NET, de determinadas bibliotecas de .NET, y del Datadog Agent/API. Estos sistemas de software de terceros son compatibles con versiones específicas de .NET y .NET Core. Cuando el software externo deja de ser compatible con una versión de .NET, el rastreador .NET también limita su compatibilidad con esa versión.

Niveles de soporte técnico

NivelAsistencia prestada
Sin soporteSin implementación. Para solicitudes especiales, contacta con el servicio de atención al cliente.
Vista previaImplementación inicial. Puede que aún no contenga todas las funciones. La asistencia para nuevas funciones y la corrección de errores y de seguridad se ofrecen en la medida de lo posible.
Disponibilidad general (GA)Implementación completa de todas las funciones. Soporte completo para nuevas funciones, correcciones de errores y de seguridad.
MantenimientoImplementación completa de las funciones existentes. No recibe nuevas funciones. Compatible solo con las correcciones de errores y seguridad.
Final de servicio (EOL)Sin soporte.

Versionado del paquete

El rastreador .NET practica el versionado semántico. Las actualizaciones de versión implican los siguientes cambios en la compatibilidad del tiempo de ejecución:

  • Las actualizaciones de versiones principales (por ejemplo, de 1.0.0 a 2.0.0) pueden cambiar la compatibilidad para cualquier tiempo de ejecución de Vista previa/Disponibilidad general a Mantenimiento/Fin del ciclo de vida (EOL).
  • Las actualizaciones de versiones secundarias (por ejemplo, de 1.0.0 a 1.1.0) no reducirán el nivel de compatibilidad con un tiempo de ejecución, pero pueden añadir compatibilidad con otros.
  • Las actualizaciones de la versión del parche (por ejemplo, de 1.0.0 a 1.0.1) no modificarán la compatibilidad con ningún tiempo de ejecución.

Referencias adicionales