Los logs muestran el estado de información para la guía de advertencias o
Por defecto, cuando la API de entrada de Datadog recibe un log, se genera un estado de INFO
y se agrega como el atributo del status
.
Este status
por defecto puede no reflejar siempre el estado real contenido en el propio log. En esta guía se explica cómo reemplazar el valor por defecto por el estado real.
Logs sin procesar
Si tus logs sin procesar no muestran el estado correcto en Datadog, extrae el estado correcto de los logs sin procesar y reasígnalo al estado correcto.
Utiliza un analizador Grok para definir una regla con el comparador word()
y extrae el estado real del log.
- Navega a pipelines de logs y haz clic en el pipeline que procesa los logs.
- Haz clic en Agregar procesador.
- Selecciona analizador Grok para el tipo de procesador.
- Utiliza el comparador
word()
para extraer el estado y pasarlo a un atributo personalizado de log_status
.
Por ejemplo, el log puede tener este aspecto:
ADVERTENCIA: John se desconectó el 26/09/2017
Agrega una regla como:
MyParsingRule %{word:log_status}: %{word:user.name} %{word:action}.*
El resultado de la extracción de MyParsingRule
{
"action": "disconnected",
"log_status": "WARNING",
"user": {
"name": "John"
}
}
Define un reasignador de estado de log
El atributo log_status
contiene el estado correcto. Agrega un reasignador de estado de log para asegurarte de que el valor de estado del atributo de log_status
reemplace al estado del log por defecto.
- Navega a pipelines de logs y haz clic en el pipeline que procesa los logs.
- Haz clic en Agregar procesador.
- Selecciona el reasignador de estado como el tipo de procesador.
- Ingresa un nombre para el procesador.
- Agrega log_status a la sección Establecer atributo(s) de estado.
- Haz clic en Crear.
Las modificaciones de un pipeline afectan a los logs nuevos solo porque todo el procesamiento se realiza en el proceso de entrada.
Logs JSON
Los logs JSON se analizan automáticamente en Datadog. Dado que el atributo de status
del log es un atributo reservado, pasa por operaciones de preprocesamiento para los logs JSON.
En este ejemplo, el estado real del log es el valor del atributo logger_severity
, no el estado del log de INFO
por defecto.
Para asegurarte de que el valor del atributo de logger_severity
reemplace al estado de log por defecto, agrega logger_severity
a la lista de los atributos de estado.
- Navega a pipelines de logs y haz clic en el pipeline que procesa los logs.
- Pasa el puntero sobre Preprocesamiento para logs JSON y haz clic en el icono del lápiz.
- Agrega
logger_severity
a la lista de atributos de estado. El reasignador de estado busca cada atributo reservado en el orden en que aparecen en la lista. Para asegurarte de que el estado procede del atributo de logger_severity
, colócalo en primer lugar en la lista lista. - Haz clic en Guardar.
Las modificaciones de un pipeline solo afectan a los logs nuevos porque todo el procesamiento se realiza en el proceso de ingestión. Los logs nuevos se configuran correctamente con el valor del atributo de logger_severity
.
Para que la reasignación funcione, respeta los formatos de estado especificados en la Documentación de procesadores.
Leer más
Más enlaces, artículos y documentación útiles: