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 PHP , 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 deux options pour configurer logs en contexte pour envoyer automatiquement le log de votre application et les métadonnées de liaison à New Relic. Les frameworks pris en charge pour les logs automatiques dans le contexte de l'utilisation de la transmission d'agent incluent :
Monolog 2 ou 3. Nécessite PHP Agent v10.1.0+.
L'autre option est de demander à l'agent de décorer les enregistrements log avec un jeton contenant des métadonnées de liaison et d'utiliser un redirecteur de logexterne pour envoyer le log à New Relic. Les frameworks pris en charge pour la décoration log incluent :
Monolog 2 ou 3. Nécessite PHP Agent v10.13.0+.
Si vous utilisez un framework pris en charge, vous pouvez configurer l'agent APM pour envoyer automatiquement le log et les métadonnées de liaison de votre application à New Relic. Les frameworks pris en charge pour les logs automatiques dans le contexte incluent :
Monologue (version 2 ou 3)
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.
Depuis la sortie de l'agent 10.3.0, les métriques de logging et la fonctionnalité de transfert de logde l'agent sont activées par défaut.
Il vous suffit d'installer une version d'agent avec des capacités de transfert de log (agent PHP 10.1.0 ou supérieur). Si le transfert est désactivé, vous pouvez utiliser cette configuration :
La documentation configuration de l'agent PHP explique en détail comment configurer votre agent, mais ici nous allons passer en revue et créer un lien vers certains des aspects les plus importants de la configuration du log PHP.
Il existe une seule option pour contrôler si la fonctionnalité de logging principale est active :
Si vous utilisez un framework de logging pris en charge, l'agent peut envoyer des métriques qui mesurent le nombre de gravité des messages de log générés par votre application. Vous pouvez activer cette fonctionnalité en utilisant la configuration newrelic.application_logging.metrics.enabled .
Si vous utilisez un framework de logging pris en charge et que vous souhaitez utiliser l'agent pour envoyer votre log d'application à New Relic, vous pouvez contrôler cela via les paramètres INI préfixés newrelic.application_logging.forwarding. Les options disponibles sont :
Si vous utilisez la bibliothèque de logging Monolog (version 2 ou 3), vous pouvez également activer l'attribut de contexte log . Cela convertit les données de contexte de logging transmises à Monolog en attribut New Relic. Vous pouvez contrôler cette fonctionnalité via les paramètres INI préfixés newrelic.application_logging.forwarding.context_data . Les options disponibles sont :
Si vous disposez d'une solution de transfert de logexistante et 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 le double de données log . Selon votre compte, cela peut entraîner une double facturation. Pour plus d'informations, découvrez comment 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 méthode nécessite que vous installiez un redirecteur de log externe avant d'activer les logs en 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.
Important
La décoration log local pour l'agent PHP ne modifie pas directement le message de log. de votre de logging framework configuration devra être mise à jour pour écrire le NR-LINKING jeton dans les messages.
Si vous choisissez d'utiliser la décoration log pour activer les logs dans le contexte de PHP, configurez d'abord votre application PHP.
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 vos logs d'application et les transmet à New Relic.
L'agent PHP va maintenant ajouter des métadonnées de liaison à chaque enregistrement log Monolog. Pour que ces informations apparaissent dans le message de log réel, il est nécessaire de définir un formateur Monolog pour chaque gestionnaire Monolog qui inclut la spécification de format %extra.NR-LINKING% à la fin du message. Il s'agit des données de liaison nécessaires pour que les logs en contexte fonctionnent.
Pour vérifier que vous avez correctement configuré l'appender log , exécutez votre application, puis vérifiez vos données de log dans 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 ne voyez pas les données du log dans l'interface utilisateur, suivez les procédures de dépannage.
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 log données de l'agent lorsqu'ils sont activés. Depuis la sortie de l'agent 10.3.0, cette fonctionnalité est activée par défaut pour l'agent PHP. 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.