Hay varias formas de informar sus registros a New Relic. Usar nuestro agente APM es una forma popular, especialmente para equipos más pequeños y equipos DevOps que valoran el beneficio de no tener que usar ninguna otra herramienta.
Sugerencia
¿Tienes muchos logs? Consulte nuestro tutorial sobre cómo optimizarlos y administrarlos.
Logs en el contexto APM
Nuestro agente tiene una característica llamada logs in context. Para obtener más información sobre los beneficios de esta característica, consulte logs en el contexto.
Para el agente APM, nuestra característica de logs en el contexto hace algunas cosas:
- Decora el registro de tu aplicación con New Relic metadatos importantes (como
span.id
,trace.id
,hostname
,entity.guid
,entity.name
) que te permiten ver tus log datos en varias New Relic UI experiencias . - Reenvía su registro directamente a New Relic, por lo que no necesita ninguna herramienta de terceros.
- Reporta algo de log métrica. Estos se muestran en el Logs gráfico de la APM Summary UI página .
Nuestras versiones actuales de agente APM tienen estas características habilitadas de forma predeterminada.
Tienes control sobre todos los aspectos de esta característica a través de la configuración del agente APM. Por motivos por los que quizás desee desactivar uno o más de estos, consulte Limitaciones. Por ejemplo, si desea que un agente APM agregue metadatos New Relic , puede usar la característica de decoración log , mientras que al mismo tiempo deshabilita el reenvío de registros y en su lugar usa otro agente de registro (por ejemplo, nuestro agente de infraestructura, o un agente de registro externo).
Los detalles de implementación y las instrucciones de configuración varían según el agente (consulte los detalles del agente).
Para obtener más información sobre el poder del logs en el contexto, consulte este caso de uso de ejemplo. El ejemplo describe cómo un equipo de ingeniería utilizó el logs en el contexto para solucionar el bajo tiempo de respuesta de su aplicación y la creciente tasa de errores.
Para ver cómo el logs en el contexto puede ayudarle a encontrar la causa raíz de un problema en sus aplicaciones y hosts, mire este breve vídeo (aprox. 3:40 minutos):
Empezar
Para configurar el inicio de logs en el contexto:
- Si aún no tiene una, cree una cuenta New Relic. Es gratis, para siempre.
- Instale un agente APM y asegúrese de tener la última versión del agente APM.
- Las versiones más recientes de nuestro agente APM tienen el logs en el contexto (adición de metadatos y reenvío) habilitado de forma predeterminada. Es posible que en ocasiones tengas que realizar algunas actualizaciones en el archivo de configuración del agente para que el registro funcione correctamente. Para obtener detalles sobre esto, consulte Habilitar el registro para su agente.
¡Eso es todo! Inicie la resolución de problemas de su aplicación con el logs en el contexto de APM yendo a la APM UI y buscando los log datos asociados.
Profundice en su registro, traza y errores, todo desde la página APM Summary en New Relic.
API del agente APM
Si su framework de registro no está disponible con nuestras soluciones de logs en el contexto existentes, puede configurar su biblioteca de registro utilizando llamada API para anotar su registro.
Configuración log del agente APM
Nuestro último agente tiene el logs en el contexto (decoración log y reenvío de registros) habilitado de forma predeterminada. Aquí hay información sobre el agente APM que admite el logs en el contexto y el reenvío de registros:
- Los procedimientos de logs en el contexto Go para el agente v3.17.0 o superior
- Los procedimientos de logs en el contexto de Java para agente v7.6.0 o superior
- Los procedimientos de logs en el contexto .NET para agente v9.8.0 o superior
- Procedimientos de logs en el contexto de Node.js para agente v8.11.0 o superior
- Procedimientos de logs en el contexto PHP para agente v10.1.0 o superior
- Procedimientos de logs en el contexto de Python para agente v7.12.0.176
- Los procedimientos de logs en el contexto Ruby para agente v8.6.0 o superior
Si no puede o no quiere utilizar el reenvío de logs de APM , puede reenviar su logutilizando otra solución.
Limitaciones
Las características de logs en el contexto APM están habilitadas de forma predeterminada. Esto puede tener un impacto negativo en su seguridad, cumplimiento, facturación o rendimiento del sistema.
A continuación se muestran algunas limitaciones conocidas adicionales:
- Con la excepción del agente Node.js, el reenvío de registros no envía el log completo. Conozca los detalles del reenvío de registros.
- El registro de inicio no está disponible hasta que se carga el agente.
- Si está utilizando Kubernetes, tenga en cuenta que decoramos el registro mediante instrumentación, no desde la Kubernetes API. Esto es independiente y aparte del cierre de sesión de escritura en el sistema de archivos. El registro nunca toca el host ni existe en un lugar donde se pueda llamar a la API .
- Cuando se lanza una excepción desde su aplicación, actualmente no verá el rastreo del stack en el logs en el contexto asociado para Java o .NET agente. Como solución alternativa, puede cambiar las reglas del filtro de caída.
- Fluentd puede agregar el
processID
de la entidad que generó el log, pero el registro APM no puede verlo. Además, en Kubernetes, se llama a la API para agregar metadatos, pero estos datos no se pueden ver desde la aplicación. Si necesita los metadatos de la entidad, le recomendamos que utilice el inicio de logs en el contexto automático, pero no envíe el registro desde la aplicación. En su lugar, continúe usando Fluentd, Fluent Bit u otra solución para reenviar el archivo de registro.
Si necesita ajustar la configuración predeterminada, consulte Desactivar el registro automático.
Garantizar la privacidad de los datos
Advertencia
Usted controla qué datos log se envían a New Relic, así que asegúrese de seguir las pautas de seguridad de su organización para enmascarar, ofuscar o evitar el envío de información de identificación personal (PII), información de salud protegida (PHI) o cualquier otro dato confidencial.
Nuestro proceso de ingesta log enmascara automáticamente tarjetas de crédito, números de seguridad social, identificaciones nacionales, etc. Para obtener más información, consulte nuestra documentación de seguridad para administración de logs.
También puede crear reglas personalizadas para enmascarar o hash datos confidenciales en su registro con nuestra característica de ofuscación. Esto es fundamental cuando no es práctico o imposible restringir el acceso a datos confidenciales, o cuando New Relic nunca debe almacenar algunos datos. Lea nuestra documentación sobre ofuscación para obtener más información.
Detalles sobre el reenvío de logs
Para todos los agentes (excepto Node.js), la opción de reenvío de registros no reenvía el log completo. Para obtener detalles sobre lo que se envía con el reenvío de registros, consulte el colapsador a continuación.
Si necesita más log reportados, las opciones incluyen:
- Configure el agente APM para incluir datos log específicos.
- Mantenga la decoración log en su lugar pero desactive el reenvío de registros del agente APM y en su lugar utilice su propia solución de reenvío de registros.
Para obtener más información sobre estas opciones, consulte los documentos del contexto de inicio de sesión específicos del agente.
Log métrico
Cuando configura un agente, obtiene automáticamente un cuadro de logging métrico en la página APM Summary:
Este gráfico muestra un recuento de registros. Si no desactivó el reenvío de log , puede hacer clic en los enlaces de los gráficos que lo llevarán al registro en sí. Incluso si deshabilita el reenvío de log , este gráfico aún muestra el registro potencial que podría inspeccionar si tuviera habilitado el reenvío de log .
Las métricas de registro se reportan a través del atributo apm.service.logging.lines
, como se muestra en la siguiente consulta:
SELECT count(apm.service.logging.lines) FROM Metric WHERE (entity.guid = 'AN_ENTITY_GUID') LIMIT MAX SINCE 60 seconds AGO TIMESERIES
Si no desea ver el gráfico métrico de logging, puede desactivarlo, pero no a nivel de cuenta. Para deshabilitar el logging métrico, consulte los documentos de configuración APM dedicados para su agente (por ejemplo, esta opción de configuración logging_metrics
para PHP).
Importante
Si desactiva el logging métrico, eso no desactiva la característica de reenvío de logs APM . Para dejar de reenviar el log de APM , consulte Administrar o deshabilitar el log en contexto de APM.
Evitar registros duplicados
El uso de la funcionalidad de logs en el contexto aumentará la ingesta de datos. Dependiendo del modelo de precios de su cuenta, esto puede tener un impacto en sus límites de ingesta y facturación.
Advertencia
Si desea utilizar el agente APM para enviar logs directamente desde su aplicación, debe deshabilitar o modificar las soluciones de reenvío de logs que actualmente recopilan logs de esas aplicaciones. De lo contrario, enviará logs duplicados, lo que resultará en una facturación doble.
Consulte nuestra guía de actualización para obtener más información sobre cómo evitar el envío de registros duplicados.
Para obtener más información, siga los procedimientos para desactivar su reenviador de logs específico.
Administre sus límites de ingesta
Example: Su equipo de ingeniería está resolviendo un problema con su aplicación, por lo que aumenta temporalmente el volumen de registro recopilado por el agente APM para proporcionar un registro más granular. Sin embargo, si deja límites más altos durante varios días, esto podría provocar el envío de datos innecesarios que aumentarán su factura.
Para evitar sorpresas, le recomendamos que utilice la consultaNRQL para crear una condición de alerta para realizar un seguimiento de sus límites de ingesta. Por ejemplo:
Ejemplo: el poder de logs en el contexto
A continuación se muestra un caso de uso detallado del uso logs en el contexto para llegar a la causa raíz de un problema.
Example scenario: El ingeniero de guardia recibe una notificación de alerta New Relic sobre el tiempo de respuesta deficiente y el aumento de la tasa de errores en su aplicación. Necesitan descubrir la causa raíz detrás del aumento de errores y latencia, para poder decidir si sacar un host problemático del equilibrio de carga o revertir la versión más reciente.
Para iniciar la resolución de problemas, van a la New Relic UI.