Datadog descubre automáticamente las dependencias de un servicio instrumentado, como bases de datos, colas o API de terceros, incluso si esa dependencia no ha sido instrumentada directamente. Al analizar las solicitudes salientes de sus servicios instrumentados, Datadog infiere la presencia de estas dependencias y recopila métricas de rendimiento asociadas.
Explore los servicios inferidos en el Catálogo filtrando las entradas por tipo de entidad, como bases de datos, colas o API de terceros. Cada página de servicio está adaptada al tipo de servicio que está investigando. Por ejemplo, la página de servicio de base de datos muestra información específica de la base de datos e incluye datos de monitoreo de base de datos si está utilizando Database Monitoring.
Configurar servicios inferidos
A partir de la versión 7.60.0 del Datadog Agent, no se necesita configuración manual para ver los servicios inferidos. Las configuraciones requeridas—apm_config.compute_stats_by_span_kind y apm_config.peer_tags_aggregation—están habilitadas de forma predeterminada.
Para las versiones 7.55.1 a 7.59.1 del Datadog Agent, agregue lo siguiente a su archivo de configuración datadog.yaml:
Si utiliza Helm, incluya estas variables de entorno en su values.yamlarchivo.
Para OpenTelemetry Collector, la versión mínima recomendada es opentelemetry-collector-contribv0.95.0 o posterior. En ese caso, actualice esta configuración:
Para determinar los nombres y tipos de las dependencias de servicio inferidas, Datadog utiliza atributos de tramo estándar y los asigna a atributos de peer.*. Por ejemplo, las API externas inferidas utilizan el esquema de nombres predeterminado net.peer.name como api.stripe.com, api.twilio.com y us6.api.mailchimp.com. Las bases de datos inferidas utilizan el esquema de nombres predeterminado db.instance. Puede cambiar el nombre de las entidades inferidas creando reglas de cambio de nombre.
Nota: Los valores de los atributos de pares que coinciden con formatos de dirección IP se modifican y redactan con blocked-ip-address para evitar ruido innecesario y métricas de etiquetado con dimensiones de alta cardinalidad. Como resultado, es posible que encuentre algunos blocked-ip-address servicios que aparecen como dependencias descendentes de sus servicios instrumentados.
Precedencia de etiquetas de pares
Para asignar el nombre a las entidades inferidas, Datadog utiliza un orden de precedencia específico entre las etiquetas de pares, cuando las entidades se definen mediante una combinación de varias etiquetas.
Si la etiqueta de mayor prioridad, como peer.db.name, no se captura como parte de la instrumentación, Datadog utiliza la segunda etiqueta de mayor prioridad, como peer.hostname, y continúa en ese orden.
Nota: Datadog nunca establece el peer.service para bases de datos y colas inferidas. peer.service es el atributo de par de mayor prioridad. Si se establece, tiene prioridad sobre todos los demás atributos.
Migrar a la nomenclatura de servicio predeterminada global
Con los servicios inferidos, las dependencias de servicio se detectan automáticamente a partir de los atributos de tramo existentes. Como resultado, no es necesario cambiar los nombres de servicio (usando la etiqueta service) para identificar estas dependencias.
Habilite DD_TRACE_REMOVE_INTEGRATION_SERVICE_NAMES_ENABLED para asegurarse de que ninguna integración de Datadog establezca nombres de servicio que sean diferentes al nombre de servicio global predeterminado. Esto también mejora la forma en que las conexiones de servicio a servicio y los servicios inferidos se representan en las visualizaciones de Datadog, en todos los lenguajes de SDK e integraciones compatibles.
Habilitar esta opción puede afectar las métricas de APM existentes, las métricas de tramo personalizadas, el análisis de trazas, los filtros de retención, los escaneos de datos confidenciales, los monitores, los paneles o los cuadernos que hacen referencia a los nombres de servicio antiguos. Actualice estos activos para usar la etiqueta de servicio predeterminada global (service:<DD_SERVICE>).
Para obtener instrucciones sobre cómo eliminar las anulaciones de servicio y migrar a servicios inferidos, consulte la guía de Anulaciones de servicio.
La función de servicios inferidos no está disponible de forma predeterminada en su centro de datos. Complete este formulario para solicitar acceso.
Lecturas adicionales
Documentación, enlaces y artículos útiles adicionales: