Log Parsing and Formatting

Clase 19 de 23Curso de Observabilidad Avanzada con New Relic

Resumen

El manejo eficiente de logs no estructurados puede representar un desafío a la hora de obtener información útil y accionable. Sin embargo, con herramientas adecuadas como Grok en New Relic Logs, es posible transformar fácilmente estos datos en estructuras de pares clave-valor útiles para consultas avanzadas y análisis más precisos.

¿Qué ventajas ofrece transformar logs sin estructura a datos estructurados?

Los logs no estructurados, comúnmente en forma de mensajes en texto plano, dificultan la identificación rápida de información relevante. Al usar patrones específicos para identificar campos importantes dentro del mensaje, convertimos estos datos en estructuras claras que facilitan:

  • Consultas efectivas y precisas.
  • Acceso más rápido a información crucial.
  • Mejora general en la accesibilidad y mantenimiento de logs.

¿Cómo empezar a estructurar tus logs desde New Relic?

El primer paso es asegurar la entrada de logs no estructurados usando un script específico que envíe estos datos a través de tu cuenta de New Relic. Recuerda sustituir tu licencia personal en el script proporcionado para iniciar el envío.

Una vez que tus logs se envíen correctamente de forma continua (por ejemplo, cada 15 segundos), puedes iniciar el proceso para estructurarlos mediante:

  • Acceso al Logs UI históricamente asumiendo los parámetros correctos (por ejemplo, source = "Space Rover Log Parsing Demo").
  • Búsqueda inicial específica del mensaje mediante criterios como la inclusión de HTTP/1.1.

¿En qué consiste el uso de Grok para el parsing de logs?

Grok es un sistema de coincidencia de patrones basado en texto que permite extraer fácilmente campos específicos de un mensaje sin estructura, convirtiéndolos en pares clave-valor. Sus principales beneficios consisten en:

  • Establecer patrones claros para coincidir con diferentes partes del mensaje.
  • Elección selectiva de qué datos extraer, ignorando información innecesaria.
  • Generación automática de una estructura de datos útil para posteriores consultas.

¿Cuáles son los pasos para crear reglas efectivas de parsing con Grok?

Para crear reglas efectivas utilizando Grok en New Relic Logs debes seguir estos pasos:

  1. Identifica el campo de mensaje (generalmente "message") que deseas analizar.
  2. Usa la interfaz del Logs UI para definir y filtrar los logs objetivo con una consulta en NRQL.
  3. Selecciona un mensaje representativo y define patrones específicos en Grok que identifiquen y extraigan la información necesaria, tales como:

  4. Direcciones IP.

  5. Timestamps.
  6. Métodos HTTP.
  7. Códigos de respuesta.

  8. Validar tu regla de parsing revisando previamente la salida inicial antes de ponerla en producción.

¿Cómo verificar que nuestras reglas funcionen correctamente?

Para asegurar que los nuevos pares clave-valor extraídos de los logs sin estructura estén disponibles y funcionen correctamente:

  • Regresa al Logs UI principal.
  • Realiza consultas específicas basadas en las nuevas claves creadas (por ejemplo, filtrar logs por método HTTP POST).

Verificar visualmente la aparición correcta de estos pares clave-valor en tu interfaz confirma el éxito del proceso y habilita la consulta eficaz para futuros análisis.

¿Cómo mejorar mis habilidades en parsing de logs con Grok?

Dentro del script de demostración proporcionado tendrás acceso a distintos formatos de logs no estructurados que varían en dificultad. Utiliza estas opciones adicionales para:

  • Ampliar tu práctica en la creación de reglas de parsing.
  • Familiarizarte progresivamente con patrones cada vez más complejos.

Además, aprovecha recursos adicionales como guías prácticas en la sección de recursos del curso o documentaciones y foros oficiales de New Relic. Esto permite profundizar en conocimientos más avanzados sobre cómo definir correctamente patrones Grok.