Cette traduction automatique est fournie pour votre commodité.
En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.
Avec notre agent Ruby , vous pouvez obtenir logs in context, qui vous permet de voir le log de votre application dans le contexte de vos autres données New Relic. Pour des informations générales sur cette fonctionnalité, consultez Logs en contexte APM.
Vous avez trois options pour configurer logs en contexte pour envoyer automatiquement le log de votre application et les métadonnées de liaison à New Relic.
Il s'agit de l'approche la plus simple et constitue un excellent choix pour les développeurs qui n'ont peut-être pas l'accès ou l'intérêt de configurer un redirecteur de log , ou pour les comptes qui souhaitent voir la puissance des logs et autres liens métadonnées dans le contexte de leurs applications, sans beaucoup de frais généraux.
Il vous suffit d'installer une version d'agent avec des capacités de transfert de log (agent Ruby 8.6.0 ou supérieur). Si le transfert est désactivé, vous pouvez utiliser cette configuration :
Cette option est activée par défaut dans la version 8.7.0 et ultérieure. Pour désactiver le transfert de log , vous devez définir la valeur sur false.
Optional adjustments:
Une fois cette option activée, vous avez également le contrôle sur le nombre maximum de logs envoyés à New Relic chaque minute. La valeur par défaut est 10 000. Si plus de 10 000 logs sont reçus dans une fenêtre de 60 secondes, votre log commencera à être échantillonné.
Réglez-le sur un nombre plus élevé pour recevoir plus de logs. Réglez-le sur un nombre inférieur pour recevoir moins de logs. Tout entier jusqu'à 100 000 est valide.
Si vous disposez déjà d'une solution de transfert de loget que vous mettez à jour votre agent pour utiliser les logs automatiques dans ce contexte, assurez-vous de disable your manual log forwarder. Sinon, votre application enverra des lignes log en double. Selon votre compte, cela peut entraîner une double facturation. Pour plus d'informations, suivez les procédures pour désactiver votre redirecteur de logspécifique.
Vous avez déjà un redirecteur de logqui vous plaît ? Nous sommes là pour vous ! Les agents linguistiques peuvent décorer votre log avec les liens métadonnées nécessaires pour fournir l'accès aux logs automatiques en contexte de fonctionnalité.
Cette option ne doit pas être utilisée avec le transfert interne à l'agent. L'utilisation d'un redirecteur de logexterne pour envoyer le log à New Relic alors que le transfert interne à l'agent est activé entraînera l'envoi de votre log deux fois à New Relic. Selon votre compte, cela peut entraîner une double facturation.
Cette option ne doit pas non plus être utilisée avec le formateur de décoration log manuel. Si vous avez des références au formateur manuel dans votre base de code, veuillez les supprimer avant d'activer cette option.
Si vous souhaitez utiliser cette option, assurez-vous que l’option de configuration de transfert dans l’agent est désactivée.
newrelic.yml:
application_logging:
forwarding:
enabled:false
Activez la décoration log dans votre configuration, puis relancez l'agent pour commencer à décorer votre log.
Certains attributs peuvent être vides si le log s'est produit en dehors d'une transaction ou s'ils ne sont pas applicables au contexte de votre application.
Nous recommandons cette option plutôt que le formateur de décoration manuel, NewRelic::Agent::Logging::DecoratingFormatter.
Avant que les agents linguistiques n'aient la possibilité de transmettre et de décorer les logs, vous pouviez activer les logs en contexte en mettant à jour votre application pour utiliser le NewRelic::Agent::Logging::DecoratingFormatter pour envoyer des liens mémo.
Cette option est toujours prise en charge, mais n'est plus encouragée. Pour obtenir des instructions sur l'utilisation de cette approche, consultez l'option logs en contexte manuels.
De plus, cette méthode nécessite que vous installiez un redirecteur de logavant d'activer les logs dans ce contexte. Si vous ne disposez pas d'un redirecteur de log , l'interface utilisateur de New Relic vous prompt d'utiliser notre agent infrastructure .
Si vous décidez d'utiliser votre solution de transfert de log existante et que vous décidez ultérieurement de mettre à jour votre agent pour utiliser les logs en contexte automatiques, assurez-vous de disable your manual log forwarder. Sinon, votre application enverra des lignes log en double. Selon votre compte, cela peut entraîner une double facturation. Pour plus d'informations, suivez les procédures pour désactiver votre redirecteur de logspécifique.
Ce document vous a-t-il aidé lors de votre installation ?
Sécurisez vos données
Votre log peut inclure des informations sensibles protégées par la loi HIPAA ou d’autres protocoles de conformité. Par défaut, nous masquons les modèles de numéros qui semblent correspondre à des éléments tels que des cartes de crédit ou des numéros de sécurité sociale, mais vous devrez peut-être hacher ou masquer des informations supplémentaires.
Pour plus d'informations, consultez notre documentation sur l'expression d'obfuscation et les règles. Vous pouvez hacher ou masquer vos données log en utilisant l'interface utilisateur de New Relic ou en utilisant NerdGraph, notre API GraphQL .
Explorez vos données
Pour tirer le meilleur parti de vos données de logging :
Sur la page APM Summary, cliquez sur votre graphique Web transaction time pour afficher le log associé à un moment précis.
Vérifiez Errors inbox de votre application pour afficher le log associé à vos erreurs.
Utilisez le tracing distribué pour voir le log associé à une trace individuelle.
En règle générale, votre log commencera à apparaître moins d'une minute après avoir activé logs dans ce contexte. Vérifiez la section Triage > Logs de votre application. Vous commencerez également à voir log patterns liés à l’erreur.
Si vous ne voyez aucun log d'erreurs ou de trace, il se peut qu'il n'y en ait pas pour votre application. Essayez d'actualiser la page de l'interface utilisateur ou de modifier la période sélectionnée.
Désactiver le logging automatique
Les logs APM dans le contexte transmettent automatiquement les données log de l'agent APM et sont activés par défaut. Cela peut avoir un impact négatif sur votre sécurité, votre conformité, votre facturation ou les performances de votre système. Pour plus d'informations, ou si vous devez ajuster le paramètre par défaut, suivez les procédures pour désactiver le logging automatique.
Option logs en contexte manuels
Si vous devez utiliser le processus manuel pour configurer les logs en contexte pour Ruby, suivez ces étapes :
Assurez-vous d'avoir déjà configuré le logging dans New Relic. Cela inclut la configuration d'un redirecteur de logpris en charge qui collecte votre log d'application et étend les métadonnées qui sont transmises à New Relic.
Le logging Rails est contrôlé par deux composants :
Un enregistreur que vous pouvez personnaliser en définissant config.logger
Un formateur log que vous pouvez personnaliser en définissant config.log_formatter)
Dans la plupart des cas, vous devez configurer les logs en contexte en définissant config.log_formatter sur DecoratingFormatter dans votre application Rails . Pour plus d'informations sur la configuration de Rails, consultez la documentation rubyonrails.org.
Dans la configuration de votre application, require newrelic_rpm, puis ajoutez la ligne suivante :
Cette configuration utilise le New Relic Formatter pour les messages de log, mais la configuration restante est fournie par les autres paramètres Rails .
L'enregistreur de décoration de New Relic est connu pour être incompatible avec les gems suivantes :
Si la définition de l'option log_formatter ne répond pas à vos besoins, remplacez l'intégralité de l'enregistreur Rails par une instance de l'enregistreur New Relic. Fournissez les paramètres au constructeur de l'enregistreur, comme ceci :
Le DecoratingLogger est un remplacement direct du standard Ruby ::Logger. Leurs constructeurs acceptent les mêmes paramètres.
Pour configurer cette extension avec le gemme lograge, suivez les procédures standard de cette documentation pour la configuration de Ruby on Rails. Aucune configuration supplémentaire n'est requise pour la gemme lograge.
Pour utiliser notre extension de logging avec une implémentation de logging différente ou avec votre propre enregistreur personnalisé, utilisez DecoratingFormatter. Par exemple:
Pour vérifier que vous avez correctement configuré l'appender log , exécutez votre application, puis vérifiez vos données log dans l'interface utilisateur de New Relic à l'aide de l'opérateur de requête has:span.id has:trace.id.
Si tout est configuré correctement et que vos données sont transmises à New Relic avec la métadonnées enrichie, votre log devrait maintenant être émistre en JSON et contenir les champs trace.id et span.id .
Si vous avez configuré votre logging dans /config/application.rb ou dans /config/environments/development.rb, exécutez votre application localement et vérifiez sa sortie de logging. Vous devriez voir un résultat comme celui-ci :