Datadog puede descubrir automáticamente las dependencias para un servicio instrumentado, como una base de datos, una cola o una API de terceros, incluso si esa dependencia aún no se ha instrumentado. Mediante el análisis de las solicitudes salientes de tus servicios instrumentados, Datadog infiere la presencia de estas dependencias y recopila las métricas de rendimiento asociado.
Con la nueva experiencia de entidades inferidas, puedes filtrar las entradas del Catálogo de servicios por tipo de entidad, como base de datos, cola o API de terceros. Esto te permite visualizar mejor las dependencias de servicio utilizando el mapa de dependencias de la Página de servicios y funciones de APM.
Para determinar los nombres y tipos de las dependencias de servicio inferidas, Datadog utiliza atributos de tramo estándar y los asigna a atributos peer.*. Para consultar la lista completa de atributos peer.*, consulta Nomenclatura de dependencias de servicio inferidas. Las API externas inferidas utilizan el esquema de nomenclatura por defecto net.peer.name. Por ejemplo, api.stripe.com, api.twilio.com, us6.api.mailchimp.com. Las bases de datos inferidas utilizan el esquema de nomenclatura por defecto db.instance.
Si utilizas el rastreador de Go, Java, Node.js, PHP, .NET o Ruby, puedes personalizar los nombres predeterminados de las entidades inferidas.
Nota: Si configuras monitores, dashboards, o notebooks para un determinado servicio inferido durante la fase beta, puede que necesites actualizarlos si el esquema de nombres cambia. Más información sobre los pasos de migración en las instrucciones de elección.
Mapa de dependencia de la Página de servicios
Utiliza el mapa de dependencias para visualizar la comunicación servicio a servicio y obtener información sobre componentes del sistema como bases de datos, colas y dependencias de terceros. Puedes agrupar las dependencias por tipo y filtrarlas por solicitudes, latencia o errores para identificar conexiones lentas o con fallos.
Elección
Sigue los pasos de migración solo una vez que el servicio de soporte de Datadog haya confirmado que la función está activada en Datadog.
Para elegir, Datadog te recomienda que ajustes tu:
Los siguientes pasos introducen un cambio de última hora: Datadog cambiará la forma en que los nombres de servicio se capturan por defecto. Consulta Migración de nomenclatura del servicio predeterminado global, para determinar si necesitas tomar alguna acción de migración.
La versión mínima del rastreador de Java requerida es 1.16.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Elimina los siguientes ajustes de tu configuración:
Variable de entorno
Motivo de la eliminación
DD_SERVICE_MAPPING
Todos los nombres de servicio aparecen por defecto en DD_SERVICE.
DD_TRACE_SPLIT_BY_TAGS
Los servicios inferidos se muestran automáticamente con la introducción de la etiqueta peer.service.
DD_TRACE_DB_CLIENT_SPLIT_BY_INSTANCE
Las instancias de la base de datos se infieren basándose en la etiqueta peer.service.
La versión mínima del rastreador de Go requerida es v1.52.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Para ello, añade las siguientes variables de entorno o propiedades del sistema a la configuración de tu rastreador:
Las versiones mínimas del rastreador de Node.js requeridas son 2.44.0, 3.31.0, o 4.10.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Para ello, añade las siguientes variables de entorno o propiedades del sistema a la configuración de tu rastreador:
La versión mínima del rastreador de PHP requerida es 0.90.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Para ello, añade las siguientes variables de entorno o propiedades del sistema a la configuración de tu rastreador:
La versión mínima del rastreador de .NET requerida es v2.35.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Para ello, añade la siguiente variable de entorno a la configuración del rastreador o a las propiedades del sistema:
La versión mínima del rastreador de Python requerida es v1.16.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Para ello, añade las siguientes variables de entorno a la configuración del rastreador o a las propiedades del sistema:
Añade las siguientes variables de entorno a la configuración del rastreador o a las propiedades del sistema:
A partir de la versión del rastreador v1.16.0 se admiten todas las bibliotecas excepto Boto2.
La versión mínima del rastreador de Ruby requerida es v1.13.0. Las actualizaciones periódicas a la última versión son recomendadas para acceder a los cambios y correcciones de errores.
Para ello, añade las siguientes variables de entorno a la configuración del rastreador o a las propiedades del sistema:
Migración de nomenclatura del servicio global por defecto
Al activar la variable de entorno DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED, se mejora la representación de las conexiones servicio a servicio y los servicios inferidos en las visualizaciones de Datadog, en todos los lenguajes de biblioteca de rastreo e integraciones compatibles.
Anteriormente, algunas bibliotecas de rastreo incluían el nombre de integración asociada en el etiquetado de nombre de servicio. Por ejemplo, .NET etiquetaba las llamadas gRPC como service:<DD_SERVICE>-grpc-client mientras que Python las etiquetaba como service:grpc-client. Con esta opción activada, todos los tramos de etiqueta de bibliotecas de rastreo compatibles de los servicios de descarga con el nombre del servicio de llamada, service:<DD_SERVICE>, proporcionando así un nombre de servicio global predeterminado.
_
Antes
Después
Nombre de servicio
service:my-service-grpc-client o service:grpc-client
service:myservice
atributos peer.*adicionales
Sin etiquetas peer.* establecidas
@peer.service:otherservice (otherservice es el nombre del servicio remoto al que se llama con gRPC)
Del mismo modo, para un tramo que representa una llamada a una base de datos mySQL:
_
Antes
Después
Nombre de servicio
service:my-service-mysql o service:mysql
service:myservice
atributos peer.*adicionales
Sin etiquetas peer.* establecidas
@peer.db.name:user-db, @peer.db.system:mysql
En consecuencia, si tienes:
Métricas de APM
Métricas de tramo personalizadas de APM
Análisis de traza
Filtros de retención
Escaneos de datos confidenciales
Monitores, dashboards, o notebooks
Y estos apuntan a nombres de servicio similares, actualiza esos elementos para utilizar la etiqueta de servicio predeterminado global (service:<DD_SERVICE>) en su lugar.