Configuración de la ingestión de registros
Clase 17 de 23 • Curso de Observabilidad Avanzada con New Relic
Resumen
Lograr una correcta ingestión de logs en New Relic permite aprovechar al máximo su potencia para monitorear aplicaciones e infraestructura. Existen diversas maneras de integrar logs desde múltiples fuentes utilizando tanto agentes de APM e infraestructura, como integraciones específicas y también mediante su API directa, el Log API endpoint.
¿Qué opciones tengo para enviar logs a New Relic?
New Relic facilita distintas opciones para integrar logs:
- Agentes predefinidos: El agente de APM e infraestructura envía logs automáticamente y además añade metadatos contextuales, ayudando a mantener el contexto de cada registro.
- Integraciones externas: Pueden enviarse logs desde plataformas como AWS, Google Cloud Platform y Microsoft Azure a través de herramientas como FluentBit y FluentD gracias a complementos específicos proporcionados por New Relic.
- API Log endpoint: Si no encuentras una integración específica, puedes crear tu propia solución usando el endpoint
logapi.newrelic.com/log/v1
.
¿Cómo se formatean correctamente los logs para el API endpoint?
Al enviar logs mediante la API directa a New Relic, es esencial formatearlos correctamente incluyendo información específica para que sean procesados sin inconvenientes. Cada log debe tener:
- Timestamp: Momento exacto del suceso registrado.
- Mensaje: El contenido o detalle específico del log.
- Atributos: Información adicional como nivel de log, nombre de servicio, ambiente, nombre del host u otros metadatos relevantes en pares clave-valor.
Este formato asegura una estructura clara y útil del registro, facilitando su posterior análisis.
¿Qué pasos debo seguir para utilizar el Log API endpoint?
El flujo estándar para utilizar esta opción consiste en:
- Asegurarte de tener a mano tu clave de licencia de New Relic.
- Crear funciones o scripts que generen logs adecuadamente formateados.
- Añadir la cabecera con tu clave e implementar el envío al API.
Al ejecutar el script creado, visualizarás directamente los logs enviados en la interfaz de New Relic. Puedes validar que los datos hayan sido recibidos efectivamente por la plataforma empleando consultas como:
SELECT * FROM LOG WHERE NewRelic.source = 'api.logs'
Este método es especialmente útil cuando se dispone de casos particulares que no coinciden con las integraciones disponibles por defecto.