OpenTelemetry utiliza convenciones semánticas que especifican nombres para diferentes tipos de datos. Esta página enumera las asignaciones de las convenciones semánticas de OpenTelemetry a las convenciones semánticas de Datadog.
Convención de OpenTelemetry
Convención de Datadog
Type
deployment.environment.name*
env
Unified service tagging
service.name
service
Unified service tagging
service.version
version
Unified service tagging
container.id
container_id
Containers
container.name
container_name
Containers
container.image.name
image_name
Containers
container.image.tag
image_tag
Containers
cloud.provider
cloud_provider
Cloud
cloud.region
region
Cloud
cloud.availability_zone
zone
Cloud
aws.ecs.task.family
task_family
ECS
aws.ecs.task.arn
task_arn
ECS
aws.ecs.cluster.arn
ecs_cluster_name
ECS
aws.ecs.task.revision
task_version
ECS
aws.ecs.container.arn
ecs_container_name
ECS
k8s.container.name
kube_container_name
Kubernetes
k8s.cluster.name
kube_cluster_name
Kubernetes
k8s.deployment.name
kube_deployment
Kubernetes
k8s.replicaset.name
kube_replica_set
Kubernetes
k8s.statefulset.name
kube_stateful_set
Kubernetes
k8s.daemonset.name
kube_daemon_set
Kubernetes
k8s.job.name
kube_job
Kubernetes
k8s.cronjob.name
kube_cronjob
Kubernetes
k8s.namespace.name
kube_namespace
Kubernetes
k8s.pod.name
pod_name
Kubernetes
app.kubernetes.io/name
kube_app_name
Kubernetes labels
app.kubernetes.io/instance
kube_app_instance
Kubernetes labels
app.kubernetes.io/version
kube_app_version
Kubernetes labels
app.kubernetes.io/component
kube_app_component
Kubernetes labels
app.kubernetes.io/part-of
kube_app_part_of
Kubernetes labels
app.kubernetes.io/managed-by
kube_app_managed_by
Kubernetes labels
client.address
http.client_ip
HTTP
http.response.body.size
http.response.content_length
HTTP
http.response.header.<header-name>
http.response.headers.<header-name>
HTTP
http.response.status_code
http.status_code
HTTP
http.request.body.size
http.request.content_length
HTTP
http.request.header.referrer
http.referrer
HTTP
http.request.header.<header-name>
http.request.headers.<header-name>
HTTP
http.request.method
http.method
HTTP
http.route
http.route
HTTP
network.protocol.version
http.version
HTTP
server.address
http.server_name
HTTP
url.full
http.url
HTTP
user_agent.original
http.useragent
HTTP
*Reemplaza la convención deployment.environment obsoleta. Requiere Datadog Agent 7.58.0+, Datadog Exporter v0.110.0+ o la ingesta OTLP de Datadog.
Asignación de tipo de tramo
Datadog tiene una convención específica del proveedor de “tipo de tramo” representada por el atributo span.type.
Según los atributos incluidos en su tramo, el Datadog Agent y los componentes de OpenTelemetry de Datadog intentan inferir el tipo de tramo adecuado para una mejor compatibilidad con otros servicios de Datadog. También puede establecer explícitamente el atributo span.type en cualquier tramo determinado para anular esta lógica mediante un procesador de attributes o transform, así como estableciendo los valores de configuración adecuados en los SDK de OpenTelemetry.
Asignar atributo de tramo de OpenTelemetry al tipo de tramo de Datadog
La siguiente tabla muestra la lógica de asignación de tipos de tramo. La tabla enumera las asignaciones en orden de precedencia.
Asignación del tipo de sistema de base de datos de OpenTelemetry al tipo de tramo de Datadog
En la tabla anterior, si un tramo es de tipo “cliente” y contiene el atributo db.system, se aplica la siguiente asignación para el tipo de tramo en Datadog. Establecer un atributo span.type en su tramo anula esta lógica.
db.system
Datadog span.type
DBMS de tipo SQL (listado a continuación)
sql
adabas
sql
cache
sql
clickhouse
sql
cloudscape
sql
cockroachdb
sql
coldfusion
sql
db2
sql
derby
sql
edb
sql
firebird
sql
firstsql
sql
filemaker
sql
hanadb
sql
h2
sql
hsqldb
sql
informix
sql
ingres
sql
instantdb
sql
interbase
sql
mariadb
sql
maxdb
sql
mssql
sql
mysql
sql
netezza
sql
oracle
sql
other_sql
sql
pervasive
sql
pointbase
sql
postgresql
sql
progress
sql
redshift
sql
sqlite
sql
sybase
sql
teradata
sql
vertica
sql
Otros tipos de BD
ver a continuación
cassandra
cassandra
couchbase
db
couchdb
db
cosmosdb
db
dynamodb
db
elasticsearch
elasticsearch
geode
db
hive
db
memcached
memcached
mongodb
mongodb
opensearch
opensearch
redis
redis
cualquier valor db.system no listado anteriormente
db
Asignación de atributos de métricas
De forma predeterminada, Datadog asigna solo los atributos de recursos de OpenTelemetry enumerados en la tabla de convenciones semánticas anterior a las etiquetas de métricas de Datadog.
Para adjuntar todos los atributos de recursos de sus cargas útiles de métricas OTLP como etiquetas, habilite la configuración metrics::resource_attributes_as_tags:
Cuando se habilita, esta configuración agrega todos los pares de key:value de atributos de recursos como etiquetas de Datadog, además de las etiquetas de convenciones semánticas asignadas que se muestran en la tabla anterior.
Nota: Habilitar esta opción puede aumentar significativamente la cardinalidad de las etiquetas. Para verificar qué etiquetas se están agregando, inspeccione sus métricas en el Metrics Explorer.
exporters:datadog:# Other configuration goes here...metrics:# Add all resource attributes as tags for metricsresource_attributes_as_tags:true
otlp_config:# Other configuration goes here...metrics:# Add all resource attributes as tags for metricsresource_attributes_as_tags:true
Habilitar esta opción agrega tanto los atributos de recursos de OpenTelemetry como las convenciones semánticas de Datadog a las etiquetas de métricas.
Lecturas adicionales
Documentación, enlaces y artículos útiles adicionales: