Información general

El Datadog Agent puede crear y asignar etiquetas a todas las métricas, trazas y logs emitidos por un contenedor en base a sus etiquetas o variables de entorno.

Si estás ejecutando el Agent como un binario en un host, configura tus extracciones de etiquetas con las instrucciones de la pestaña Agent. Si estás ejecutando el Agent como un contenedor, configura tu extracción de etiquetas con las instrucciones de la pestaña Agent contenedorizado.

Etiquetado predefinido

El Agent puede usar Autodiscovery y asociar etiquetas a todos los datos emitidos por contenedores. La lista de etiquetas asociadas depende de la [configuración de cardinalidad] del Agent1.

Etiqueta (tag)CardinalidadRequisito
container_nameAltaN/D
Nota: No incluido en el tiempo de ejecución del contenedor.
container_idAltaN/D
rancher_containerAltaEntorno de Rancher
mesos_taskOrquestadorEntorno de Mesos
docker_imageBajaN/D
Nota: no incluido en el tiempo de ejecución del contenedor.
image_nameBajaN/D
short_imageBajaN/D
image_tagBajaN/D
swarm_serviceBajaEntorno de Swarm
swarm_namespaceBajaEntorno de Swarm
rancher_stackBajaEntorno de Rancher
rancher_serviceBajaEntorno de Rancher
envBajaEtiquetado de servicios unificado activado
versionBajaEtiquetado de servicios unificado activado
serviceBajaEtiquetado de servicios unificado activado
marathon_appBajaEntorno de Marathon
chronos_jobBajaEntorno de Mesos
chronos_job_ownerBajaEntorno de Mesos
nomad_taskBajaEntorno de Nomad
nomad_jobBajaEntorno de Nomad
nomad_groupBajaEntorno de Nomad
git.commit.shaBajaorg.opencontainers.image.revision utilizado
git.repository_urlBajaorg.opencontainers.image.source utilizado

Etiquetado de servicios unificados

La práctica recomendada por Datadog en entornos contenedorizados es usar el etiquetado de servicios unificado para asignar etiquetas. El etiquetado de servicios unificado asocia toda la telemetría de Datadog mediante el uso de tres etiquetas estándar: env, service y version. Para aprender cómo configurar tu entorno usando el etiquetado unificado, consulta la [documentación de etiquetado de servicios unificado] específica2.

Extrae labels como etiquetas

A partir de la versión de Agent v6.0+, el Agent puede recopilar labels para un contenedor cualquiera y usarlas como etiquetas para asociarlas a todos los datos emitidos por este contenedor.

Para extraer una label de contenedor <LABEL_NAME> dada y transformarla en una clave de etiqueta <TAG_KEY> dentro de Datadog, añade la variable de entorno a continuación al Datadog Agent:

DD_CONTAINER_LABELS_AS_TAGS='{"<LABEL_NAME>": "<TAG_KEY>"}'

Por ejemplo, podrías configurar:

DD_CONTAINER_LABELS_AS_TAGS='{"com.docker.compose.service":"service_name"}'

Nota: <LABEL_NAME> no distingue entre minúsculas y mayúsculas. Por ejemplo, si tienes labels que se llaman foo y FOO, y configuras DD_CONTAINER_LABELS_AS_TAGS='{"foo": "bar"}', tanto foo como FOO se asignan a bar.

Nota: DD_CONTAINER_LABELS_AS_TAGS es equivalente al antiguo DD_DOCKER_LABELS_AS_TAGS, y DD_CONTAINER_ENV_AS_TAGS es equivalente al antiguo DD_DOCKER_ENV_AS_TAGS.

Para extraer una label de contenedor <LABEL_NAME> dada y transformarla en una clave de etiqueta <TAG_KEY> dentro de Datadog, añade el bloque de configuración a continuación en el Archivo de configuración datadog.yaml del Agent:

container_labels_as_tags:
  <LABEL_NAME>: <TAG_KEY>

Po ejemplo, podrías configurar:

container_labels_as_tags:
  com.docker.compose.service: service_name

Extrae variables de entorno como etiquetas

Datadog recopila etiquetas automáticamente de Docker, Kubernetes, ECS, Swarm, Mesos, Nomad y Rancher. Para extraer aún más etiquetas, usa las opciones presentadas a continuación:

Variable de entornoDescripción
DD_CONTAINER_LABELS_AS_TAGSExtrae labels de contenedor
DD_CONTAINER_ENV_AS_TAGSExtrae variables de entorno de contendedor
DD_KUBERNETES_POD_LABELS_AS_TAGSExtrae etiquetas del pod
DD_CHECKS_TAG_CARDINALITYAñade etiquetas a las métricas de los checks
DD_DOGSTATSD_TAG_CARDINALITYAñade etiquetas a las métricas personalizadas

A partir de la versión del Agent v7.20+, un Agent contenedorizado puede usar Autodiscover en etiquetas de labels de contenedores. Este proceso permite al Agent asociar etiquetas personalizadas a todos los datos emitidos por un contenedor sin modificar el archivo datadog.yaml del Agent.

Las etiquetas deberían ser añadidas usando el formato mostrado a continuación:

com.datadoghq.ad.tags: '["<TAG_KEY_1>:<TAG_VALUE_1>", "<TAG_KEY_2>:<TAG_VALUE_2>"]'

Con Agent v6.0+, el Agent puede recopilar variables de entorno para un contenedor cualquiera y usarlas como etiquetas para asociarlas a todos los datos emitidos por ese contenedor.

Para extraer una variable de entorno de contenedor <ENVVAR_NAME> dada y transformarla en una clave de etiqueta <TAG_KEY> dentro de Datadog, añade la variable de entorno mostrada a continuación al Datadog Agent:

DD_CONTAINER_ENV_AS_TAGS='{"<ENVVAR_NAME>": "<TAG_KEY>"}'

Por ejemplo, podrías configurar:

DD_CONTAINER_ENV_AS_TAGS='{"ENVIRONMENT":"env"}'

Para extraer una variable de entorno de contenedor <ENVVAR_NAME> dada y transformarla en una clave de etiqueta <TAG_KEY> dentro de Datadog, añade el bloque de configuración mostrado a continuación al Archivo de configuración datadog.yaml del Agent:

container_env_as_tags:
  <ENVVAR_NAME>: <TAG_KEY>

Por ejemplo, podrías configurar:

container_env_as_tags:
  ENVIRONMENT: env

Leer más