Atributos y asignación de alias
Centralizar logs a partir de varias tecnologías y aplicaciones puede generar decenas o centenas de atributos diferentes en un entorno Log Management, especialmente cuando muchos equipos trabajan en el mismo entorno.
Por ejemplo, una IP de cliente puede tener varios atributos de logs, como clientIP
, client_ip_address
, remote_address
, client.ip
, etc. Es posible referirse a un tiempo de ejecución como exec_time
, request_latency
, request.time_elapsed
, etc.
Utiliza los atributos y la asignación de alias para unificar el entorno de tus logs.
Tipos de atributos y asignación de alias
Los atributos imponen facetas de logs y etiquetas (tags) que se utilizan para filtrar y buscar en el Explorador de logs.
Los atributos reservados se consumen automáticamente.
Los atributos estándar son la columna vertebral de la convención de nomenclatura de tu organización. Existe un conjunto predeterminado de atributos estándar disponibles en la aplicación. Sin embargo, esta lista puede personalizarse para crear una convención de nomenclatura para tu equipo.
Utiliza la asignación de alias una vez que hayas implementado una convención de nomenclatura con atributos estándar o si estás intentando crear una faceta estándar única a partir de varias fuentes de logs. Por ejemplo, realiza un seguimiento de los clientes más afectados por las latencias en una infraestructura híbrida Apache y Amazon Cloud Front, utilizando la faceta estándar Network Client IP
junto con la duration
estándar. La asignación de alias te permite implementar una convención de nomenclatura, sin tener que cambiar la pila técnica de un equipo.
Atributos reservados
A continuación se muestra una lista de los atributos reservados que se consumen automáticamente con los logs.
Nota: Si también estás recopilando trazas o métricas, se recomienda configurar el etiquetado unificado de servicios. Esta configuración combina la telemetría de Datadog mediante el uso de tres etiquetas estándar: env
, service
y version
. Para obtener más información, consulta la documentación específica del etiquetado unificado de servicios.
Atributo | Descripción |
---|
host | El nombre del host de origen tal y como se define en las métricas. Datadog recupera automáticamente las etiquetas de host correspondientes del host coincidente en Datadog y las aplica a tus logs. El Agent configura este valor automáticamente. |
source | Corresponde al nombre de la integración, la tecnología de la que procede el log. Cuando coincide con un nombre de integración, Datadog instala automáticamente los analizadores y las facetas correspondientes. Por ejemplo, nginx , postgresql , etc. |
status | Corresponde al nivel/a la severidad de un log. Se utiliza para definir patrones y tiene un diseño específico en la interfaz de usuario de los logs de Datadog. |
service | El nombre de la aplicación o del servicio que genera eventos de logs. Se utiliza para pasar de logs a APM, así que asegúrate de definir el mismo valor cuando utilices ambos productos. |
trace_id | Corresponde al ID de rastreo utilizado para trazas. Se utiliza para correlacionar tu log con su traza. |
message | Por defecto, Datadog consume el valor del atributo message como cuerpo de la entrada del log. Ese valor se resalta y se muestra en Live Tail, donde se indexa para búsquedas de texto completo. |
Atributos estándar
Las integraciones de logs se basan de forma nativa en un conjunto predeterminado de atributos estándar.
La tabla de atributos estándar viene con un conjunto de atributos estándar predefinidos. Puedes añadir a la lista tus propios atributos y editar o eliminar los atributos estándar existentes.
Crear un nuevo atributo estándar
Los usuarios administradores pueden seleccionar la lista de atributos estándar:
- Ve a la página de configuración del atributo estándar.
- Haz clic en New Standard Attribute (Nuevo atributo estándar).
- Define el atributo estándar:
Path
: La ruta de los atributos estándar tal y como los encontrarías en tu JSON (por ejemplo, network.client.ip).Type
(string
, integer
, double
, boolean
): tipo de atributo, que se utiliza para eliminar elementos de la lista de reasignación.Description
: Descripción legible del atributo.- (Opcional)
Remapping list
: Lista separada por comas de los atributos no conformes que deben reasignarse al atributo estándar.
Lista de atributos estándar por defecto
Consulta la lista completa lista de atributos estándar por defecto de Log Management, que se divide en los dominios funcionales:
Atributo estándar | Descripción |
---|
Red/Comunicaciones | Estos atributos están relacionados con los datos utilizados en la comunicación de red. Todos los campos y todas las métricas llevan el prefijo network . |
Geolocalización | Estos atributos están relacionados con la geolocalización de las direcciones IP utilizadas en la comunicación de red. Todos los campos llevan el prefijo network.client.geoip o network.destination.geoip . |
Solicitudes HTTP | Estos atributos están relacionados con datos utilizados habitualmente en solicitudes y accesos HTTP. Todos los atributos llevan el prefijo http . Las integraciones típicas que se basan en estos atributos incluyen Apache, Rails, AWS CloudFront, servidores de aplicaciones web, etc. Los atributos de detalles de URL llevan el prefijo http.url_details . Estos atributos proporcionan detalles sobre las partes analizadas de la URL HTTP. Son generados por el analizador de URL. |
Código fuente | Estos atributos están relacionados con los datos utilizados cuando se genera un log o un error utilizando un generador de logs en una aplicación personalizada. Todos los atributos llevan el prefijo logger o error . Las integraciones típicas que se basan en estos atributos incluyen Java, Node.js, .NET, Golang, Python, etc. |
[Base de datos] 16 | Las integraciones típicas que se basan en estos atributos son Cassandra, MySQL, RDS, Elasticsearch, etc. |
Rendimiento | Estos atributos están relacionados con las métricas de rendimiento. Datadog recomienda reasignar cualquier duración de tus logs con este atributo, ya que se muestran y se utilizan como medida por defecto para la búsqueda de trazas. |
Atributos relacionados con el usuario | Todos los atributos y todas las medidas llevan el prefijo usr . |
Syslog y trasvasadores de logs | Estos atributos están relacionados con los datos añadidos por un syslog o un agente para el envío de logs. Todos los campos y métricas llevan el prefijo syslog . Las integraciones que se basan en estos incluyen Rsyslog, NxLog, Syslog-ng, FluentD y Logstash. |
DNS | Todos los atributos y todas las medidas llevan el prefijo dns . |
Eventos | Todos los atributos llevan el prefijo evt . |
Asignación de alias
La creación de un alias para un atributo de origen que se asigna a un atributo de destino permite a los logs llevar tanto el atributo de origen como el de destino.
Los usuarios pueden interactuar tanto con el atributo con el alias (origen), como con el atributo estándar (destino). Sin embargo, se invita a los usuarios a utilizar la faceta estándar, en lugar de la del alias. De este modo, se orienta la convención de nomenclatura y se disuade a los usuarios de crear recursos (como vistas guardadas o dashboards) basados en contenido no estándar.
Detalles adicionales sobre la asignación de alias:
- La asignación de alias se produce después de que los pipelines procesan logs. Cualquier atributo extraído o procesado puede utilizarse como fuente de asignación de alias.
- Datadog impone un tipo de atributo con alias. Si esto no es posible, se omite la asignación de alias.
- Cuando un log ya lleva el atributo de destino, la asignación de alias anula el valor de ese log.
- En el caso de un atributo estándar al que se asignan varios atributos con alias, si un log lleva varios de estos atributos de origen, sólo se aplica el alias a uno de estos atributos de origen.
- Las actualizaciones o adiciones a los atributos estándar sólo se aplican a los logs recientemente consumidos.
- Los atributos estándar no pueden tener alias.
- Los atributos sólo pueden llevar alias para atributos estándar.
- Para respetar la estructura JSON de los logs, no es posible tener un atributo estándar como elemento secundario de otro (por ejemplo,
user
y user.name
no pueden ser ambos atributos estándar).
Para obtener más información, consulta Facetas de alias.
Referencias adicionales
Más enlaces, artículos y documentación útiles: