Envío de registros a New Relic mediante API directa
Clase 17 de 23 • Curso de Observabilidad Avanzada con New Relic
Resumen
Ingresar registros correctamente en New Relic permite monitorear y obtener información valiosa sobre aplicaciones e infraestructura. Una opción para lograr esto, especialmente cuando no se cuenta con agentes o integraciones nativas, es utilizar la API de logs. Este método ofrece flexibilidad, permitiendo enviar datos personalizados directamente desde diversas fuentes.
¿Qué opciones ofrece New Relic para recolectar registros?
New Relic facilita el ingreso automatizado de registros mediante distintos mecanismos, como:
- Agentes integrados: Permiten enviar datos desde APM o infraestructura, enriqueciendo automáticamente los registros con metadatos importantes.
- Integraciones existentes: Disponibles para plataformas cloud como AWS, GCP o Azure, además de herramientas como Fluentbit o Fluent para reenviar logs hacia New Relic.
- API directa de logs: Útil para fuentes específicas que no tengan integraciones predefinidas, ofreciendo máxima personalización.
¿Cómo utilizar la API de logs de New Relic?
Para enviar registros mediante la API, se requiere preparar los datos con precisión. Esto implica:
- Formatear registros adecuadamente antes de enviarlos.
- Asegurar campos obligatorios:
timestamp
para saber cuándo ocurrió el registro,message
que contiene el contenido principal, y un campo adicional llamadoattributes
donde se incluyen metadatos extra como el nivel del log, el servicio, el host y el entorno.
Una vez preparados, los registros se envían mediante una solicitud HTTP al siguiente endpoint:
log-api.newrelic.com/log/v1
La clave de licencia personal de New Relic se incluye como encabezado para permitir una autenticación segura.
Ejemplo práctico: envío de datos a través de un script
En la demostración se emplea un script que genera registros aleatorios, estructurados en niveles como info, warning, error, debug y critical. Aquí hay un ejemplo de comando para ejecutarlo desde la terminal:
node direct_log_API_demo.js
Después de ejecutar, los registros aparecerán inmediatamente disponibles dentro de la interfaz de usuario de New Relic.
¿Cómo confirmar la llegada de registros en New Relic?
Para verificar que los registros llegaron exitosamente a New Relic, se utiliza la herramienta de consulta llamada NRQL. A continuación se muestra una consulta básica para visualizar los datos recibidos mediante la API:
SELECT * FROM Log WHERE newrelic.source = 'api.logs'
Esta consulta mostrará claramente todos los datos recientemente ingresados por el método API, permitiendo inspeccionar sus atributos y mensajes específicos.
¿Qué datos de log podrían interesarte según tu industria?
Dependiendo del sector o aplicación, el enfoque sobre los datos de logs podría variar considerablemente:
- Rovers espaciales: Interesan estados operativos, problemas técnicos, misión completada o pérdida de señal.
- Comercio electrónico: Importa cómo navegan los usuarios, si agregan productos al carrito o si finalizan compras.
- Videojuegos en línea: Es crucial saber si los usuarios pueden conectarse efectivamente a los servidores del juego.
Te animo a compartir cuál es tu industria y qué tipo de información recolectada en los registros te resulta más valiosa.