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.
Notre agent PHP dispose d'un certain nombre de paramètres permettant d'affiner les types et les quantités de données signalées. Pour la plupart des utilisateurs, les valeurs par défaut produisent le meilleur mélange possible de surcharge et d'utilité. Cependant, vous pouvez modifier les paramètres en fonction de vos besoins spécifiques.
Important
Redémarrez toujours votre serveur Web après avoir modifié les paramètres INI. Dans le cas contraire, elles risquent de ne pas prendre effet immédiatement.
Ordre de priorité de configuration
Voici une illustration simple de l'ordre de priorité que l'agent PHP suit pour la configuration. La configuration côté serveur n'est pas applicable. Les seules valeurs que vous pouvez modifier dans l' UI pour les applications utilisant l' agent PHP sont l'alias de l'application et sa valeur Apdex-T.
Avec l'agent de PHP de New Relic, les paramètres de l'API remplacent les paramètres de configuration par répertoire. Les paramètres par répertoire remplacent les paramètres du fichier php.ini . La configuration côté serveur n'est pas applicable.
Variables du fichier de configuration
Lors de l'installation, le script newrelic-install fournit des informations sur les fichiers de configuration qu'il a créés ou une liste de fichiers que vous devez modifier. Par défaut, il tentera de créer un fichier de configuration nommé newrelic.ini.
Dans certains cas, il peut vous être demandé d’ajouter des options de configuration à votre fichier php.ini . Ne faites cela que si nécessaire. Le fichier exact que vous devez modifier dépend de la façon dont votre version (ou vos versions) particulière(s) de PHP a été configurée.
Les deux configurations les plus courantes sont :
Utilisez un seul fichier newrelic.ini . Il s'agit généralement de la valeur par défaut si vous avez installé ou compilé PHP vous-même sans options spéciales.
Analyser un répertoire donné pour tous les .ini fichiers.
Si vous n'êtes pas sûr du fichier à modifier :
Depuis la ligne de commande, examinez la sortie de php -i.
Dans un navigateur, examinez la sortie d’une page contenant le script :
<?phpphpinfo();?>
Si le fichier newrelic.ini apparaît, utilisez-le.
Portée variable
Chaque variable de votre fichier newrelic.ini a une portée définie. La portée contrôle où le paramètre peut être établi ou modifié.
Les deux portées prises en charge pour les paramètres New Relic sont :
SYSTEM: Valeurs définies globalement dans le fichier global newrelic.ini .
Chacun peut également être défini à un niveau plus général. Les emplacements valides pour chacun sont :
Can be set for:
SYSTEM
PERDIR
Défini dans le fichier global newrelic.ini .
Défini sur une base par répertoire.
Important
Vous ne pouvez pas utiliser ini_set() pour les paramètres New Relic.
Type de variable
Chaque variable de votre fichier newrelic.ini a un type défini. Le type spécifie la syntaxe de la valeur que vous utilisez.
Variable type
Formatting and contents
String
Les valeurs de chaîne peuvent contenir n’importe quel caractère alphanumérique et ponctuation. La valeur est délimitée par des guillemets.
Boolean
Un paramètre logique vrai ou faux. Les valeurs valides sont :
Pour vrai ou activé : on, true, le nombre 1.
Pour faux ou désactivé : off, false, le nombre 0.
Number
Les valeurs numériques ne peuvent contenir que des chiffres, plus un point pour indiquer une virgule flottante. Sauf indication contraire, tous les nombres sont des entiers et non des virgules flottantes.
Duration
Une valeur de chaîne délimitée par des guillemets qui représentent une durée. Utilisez des indicateurs de caractères pour délimiter les composants temporels. S'il n'y a pas d'indicateurs, le temps est en millisecondes.
w\= semaines
d\= jours
h\= heures
m\= minutes
s\= secondes
ms\= millisecondes
us\= microsecondes
Exemples de durées :
"1w3d23h10m"\= 1 semaine, 3 jours, 23 heures et 10 minutes
"5h30m"\= 5 heures et 30 minutes
"500"\= 500 millisecondes
Paramètres de configuration générale
Ces paramètres sont disponibles dans le fichier newrelic.ini .
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
"PHP Application"
Cette option de configuration définit le nom de l'application sous laquelle les données sont signalées dans APM. Nous vous recommandons fortement de remplacer le nom par défaut par un nom descriptif pour éviter toute confusion et toute agrégation involontaire de données. Les données de toutes les applications portant le même nom seront fusionnées dans New Relic, alors définissez cela avec soin.
Pour toutes les options de dénomination des applications, y compris les paramètres par répertoire, voir Nommez votre application PHP.
La valeur du paramètre est une liste séparée par des points-virgules contenant jusqu'à trois noms d'application. Le premier nom de la liste est le nom de l'application primary . Il doit être unique pour chaque compte. Le nom de l'application est utilisé comme clé dans un cache. Lorsque vous utilisez plusieurs noms pour une application, New Relic utilise uniquement le premier nom pour la mise en cache. Par conséquent, chaque nom d’application ne peut apparaître que comme premier élément once.
Si vous définissez newrelic.appname="App1;App2" et plus tard dans le jeu de codes newrelic.appname="App1;App3", le deuxième semblera ne pas fonctionner. Il fera rapport à App1 et App2 en raison de la mise en cache.
Si vous avez besoin de noms d'application qui se chevauchent, définissez le nom d'application commun dans les deuxième ou troisième positions. Par exemple : newrelic.appname="App2;App1" et newrelic.appname="App3;App1". Ceci est utile, par exemple, lorsque vous souhaitez suivre un sur-ensemble d’applications.
Portée:
PERDIR
Type :
Booléen
Défaut:
false
Prudence
Ce paramètre est obsolète et peut ne pas se comporter comme prévu. Utilisez plutôt des propriétés d’attribut.
Si vous transmettez des informations sensibles directement dans l'URL, gardez cette option désactivée.
Si défini sur true, cela activera l'enregistrement des paramètres passés à un script PHP via l'URL (tout après le ? dans l'URL) dans la trace de la transaction. Ceux-ci apparaîtront sous la liste déroulante Parameters lors de l'affichage de la trace de transaction.
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
(auto-détecté)
L'agent PHP New Relic détecte automatiquement le framework qu'il prend en charge, mais des problèmes peuvent survenir si vous utilisez de nouvelles versions expérimentales ou si vous avez personnalisé le framework. Ce paramètre désactive la détection automatique du framework, indiquant plutôt à l'agent de tenter de nommer les transactions en fonction du framework spécifié.
La spécification de "no_framework" désactivera entièrement la dénomination des transactions liées au framework.
Utilisez l’une des valeurs suivantes, selon le cas :
"cakephp"
"codeigniter"
"drupal" (pour Drupal 6 et 7)
"drupal8" (pour Drupal 8 et 9)
"joomla"
"laravel"
"magento"
"magento2"
"mediawiki"
"slim"
"symfony2" (pour Symfony 3 - Symfony 2.x n'est pas pris en charge)
"symfony4" (pour Symfony 4 et 5)
"wordpress"
"yii"
"zend"
"zend2" (pour Zend Framework 2 et 3)
"no_framework" (pour ne forcer aucun framework même si un était détecté)
Si la détection automatique du framework échoue, cette commande échouera également.
Conseil
Consultez la page de compatibilité PHP pour obtenir les dernières informations sur les frameworks pris en charge.
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Prudence
Ce paramètre est obsolète et peut ne pas se comporter comme prévu. Utilisez plutôt des propriétés d’attribut.
Utilisez le paramètre newrelic.ignored_params pour spécifier une liste séparée par des virgules de noms de paramètres à exclure de la liste des paramètres envoyés aux serveurs New Relic . Entourez les valeurs de chaîne de guillemets.
Si vous activez la capture de paramètres avec newrelic.capture_params, il peut y avoir des paramètres avec des données utilisateur sensibles que vous ne souhaitez pas voir capturés par New Relic ou visibles dans la trace de transaction. Utilisez ceci pour bloquer l'enregistrement de ces données.
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Remarques :
Introduit dans la version 3.0 de l'agent.
Définit la New Relic à utiliser. Dans un système multi-locataire, cela peut être défini pour chaque répertoire.
Conseil
Lorsque vous effectuez une mise à niveau d'une ancienne version d'agent vers la version 3.0 ou supérieure, la licence sera supprimée de votre fichier de configuration de daemon (avec un commentaire expliquant pourquoi) et stockée dans le fichier /etc/newrelic/upgrade_please.key. Copiez la licence de ce fichier et définissez-la dans votre fichier newrelic.ini . Supprimez le fichier upgrade_please.key .
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
"info"
Définit le niveau de détail des messages envoyés au fichier de log. Les valeurs possibles, par ordre croissant de détail, incluent :
error
warning
info
verbose
debug
verbosedebug
Lorsque vous signalez des problèmes d'agent au support technique de New Relic, verbosedebug est le paramètre le plus utile. Cependant, cela peut générer beaucoup d'informations très rapidement, évitez donc de maintenir l'agent au niveau verbosedebugplus longtemps qu'il ne faut pour reproduire le problème que vous rencontrez.
Lorsque vous signalez des problèmes d'agent au support technique de New Relic, il peut vous être demandé de définir ce niveau sur un niveau personnalisé, activant le débogage uniquement pour certains sous-systèmes. Les niveaux personnalisés dépassent le cadre de ce document.
Portée:
PERDIR
Type :
Nombre
Défaut:
1
Remarques :
C'était newrelic.transaction_tracer.top100.
Définit le niveau de détail dans une trace de transaction :
Lorsque défini sur 1, tous les appels au serveur sont tracés.
Lorsqu'il est défini sur 0, la trace inclut uniquement les appels instrumentés en interne par New Relic et ceux définis par l'utilisateur à l'aide de newrelic.transaction_tracer.custom.
Le niveau par défaut de 1 a un impact sur les performances. Si vous devez améliorer les performances, essayez de définir le niveau de détail sur 0.
Lorsque tous les appels au serveur ne sont pas tracés, les blocs de temps dans la trace de la transaction seront étiquetés comme uninstrumented time, et seules certaines fonctions (définies en interne par l' agent) sont instrumentées. Même en signalant tous les appels, il peut y avoir du temps non instrumenté dans la trace.
Portée:
SYSTEM
Type :
Booléen
Défaut:
false
Permet une haute sécurité pour toutes les applications. Lorsque la sécurité élevée est définie sur true, les comportements suivants prennent effet :
Les données ne seront pas envoyées à New Relic à moins que le daemon newrelic n'utilise une connexion sécurisée (HTTPS). Si le processus PHP génère un daemon newrelic, il sera configuré pour utiliser HTTPS quelle que soit la valeur de newrelic.daemon.ssl.
Les chaînes de requête brutes ne seront jamais collectées, quelle que soit la valeur de newrelic.transaction_tracer.record_sql.
L'attribut de demande ne sera jamais capturé, quels que soient les paramètres configuration newrelic.attributes.
L'agent supprime les messages d'exception des erreurs.
Prudence
Si vous modifiez le paramètre newrelic.high_security, vous devez also modifier le paramètre de sécurité dans l'interface utilisateur APM. Si les deux paramètres ne correspondent pas, aucune donnée ne sera collectée. Pour plus d'informations, voir Haute sécurité.
Définit le nom d'hôte à afficher dans l'UI APM. Si cette option est définie, elle remplace le nom d'hôte par défaut que l' agent capture automatiquement.
Les valeurs de ces paramètres contrôlent le démarrage du daemon. Lorsque l'agent détecte que le daemon doit être démarré, il convertit ces options en options de ligne de commande appropriées pour le daemon.
Tous ces paramètres reflètent les paramètres du fichier newrelic.cfg . Ils sont répétés ici pour conserver tous les .ini paramètres en un seul endroit. Chaque paramètre dans newrelic.cfg a son équivalent ici, avec newrelic.daemon. comme préfixe. Par exemple, le paramètre ssl dans newrelic.cfg est newrelic.daemon.ssl dans un .ini déposer.
Important
Si le fichier /etc/newrelic/newrelic.cfg existe, l'agent ignore ces paramètres et agent ne démarrera pas le automatiquement.
Pour plus d'informations sur les façons de démarrer le daemon et quand utiliser un fichier de configuration externe, consultez Modes de démarrage du daemon PHP.
Portée:
SYSTEM
Type :
Chaîne de spécification de temps ; par exemple, "5m" ou "1h20m"
Défaut:
"10m"
Définit le temps écoulé après lequel une application sera considérée comme inactive. Les candidatures inactives ne sont pas comptabilisées dans la limite maximale de 250 candidatures. Les unités autorisées sont "ns", "us", "ms", "s", "m" et "h".
Une valeur de 0 sera interprétée comme « pas de délai d'attente ». Cela aura pour conséquence que les nouvelles applications seront toujours comptabilisées dans la limite de 250 applications, ainsi que que le daemon sera incapable de sortir une petite quantité de mémoire par application vers le système d'exploitation.
Recommandation : n'utilisez pas cette valeur à moins que le support New Relic ne la requests . Au lieu de cela, pour les transactions d’arrière-plan occasionnelles, utilisez une valeur deux fois supérieure à l’intervalle. Par exemple, pour une tâche d’arrière-plan horaire, définissez le délai d’expiration sur 2 heures.
Portée:
SYSTEM
Type :
Chaîne de spécification de temps ; par exemple, "1s" ou "5m"
Défaut:
"0"
Définit le temps maximum pendant lequel l'agent doit attendre que le daemon se connecte à une application. Une valeur de "0" oblige l'agent à n'effectuer qu'une seule tentative de connexion au daemon. Les unités autorisées sont "ns", "us", "ms", "s", "m" et "h".
Avec ce délai d'expiration défini, l'agent n'abandonnera pas immédiatement une transaction lorsque le daemon ne s'est pas encore connecté au backend, mais accordera plutôt au daemon le temps d'établir la connexion.
Recommandation : si vous définissez un délai d’expiration, la valeur recommandée est "15s". Définissez ce délai d'expiration uniquement lorsque des tâches d'arrière-plan de longue durée sont instrumentées, car en cas de problèmes de connexion, l' agent se bloquera pendant le délai d'expiration donné à chaque démarrage de transaction.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Le paramètre spécifie le nom d'un log d'audit, qui contiendra toutes les données envoyées par le daemon aux serveurs New Relic, y compris l'URL complète, la date, l'heure et les données non compressées et non codées pour chaque demande.
Ce fichier ne peut pas être le même fichier que le log de daemon.
Important
Ce log d’audit peut devenir très volumineux, très rapidement. Évitez d’utiliser le paramètre newrelic.daemon.auditlog pendant des périodes prolongées. Son objectif principal est de permettre à l'administrateur système d'effectuer des examens de sécurité et d'observer exactement quelles données sont transmises.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
"collector.newrelic.com"
Définit le nom et le port facultatif de l'hôte du collecteur que le daemon contactera pour vérifier votre et envoyer les données de l'agent.
Il s'agit soit simplement du nom de l'hôte, soit du nom et du numéro de port sous la forme "hostname:port". La spécification d'un numéro de port de 0 utilisera le port par défaut, qui est 80.
Prudence
Ne modifiez pas cette valeur sans l'aide du support New Relic.
Portée:
SYSTEM
Type :
Nombre
Défaut:
0
Si vous préférez que le daemon soit lancé en externe avant le démarrage de l' agent, cette valeur détermine quand l' agent est autorisé à démarrer le daemon :
0:Aucune restriction n'est imposée au démarrage du daemon et l'agent peut démarrer le daemon à tout moment.
1: Un agent hors ligne de commande (comme Apache ou php-fpm) peut démarrer le daemon.
2: Seul l'agent de la ligne de commande peut démarrer le daemon.
3: L'agent ne démarrera jamais le daemon. Utilisez ce paramètre si vous configurez le daemon via newrelic.cfg et le démarrez en dehors de l'agent.
Important
Si /etc/newrelic/newrelic.cfg existe, l'agent suppose que le daemon est censé être démarré par son script de démarrage, et non via l'agent. Ce paramètre n'a aucune signification et n'apparaît pas dans newrelic.cfg.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
"/usr/bin/newrelic-daemon"
Définit le nom de l'exécutable daemon sur lancement.
Cette variable identifie le chemin complet vers le fichier exécutable du daemon. Si le système New Relic a été installé à l'aide du package standard, l'emplacement par défaut sera correct. Si vous avez installé un emplacement personnalisé à l'aide de la distribution tar (et que vous n'avez pas l'autorisation d'écrire sur /usr/bin), le daemon peut résider à un autre emplacement.
Ce paramètre n'apparaît pas dans le fichier newrelic.cfg car il ne concerne que PHP.
Important
Sur OpenSolaris, /usr est souvent un système de fichiers en lecture seule. L'emplacement du daemon par défaut pour OpenSolaris est /opt/newrelic/bin/newrelic-daemon.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
"/var/log/newrelic/newrelic-daemon.log"
Définit le nom du fichier de log dans lequel enregistrer un message de log spécifique. Ce fichier doit être accessible en écriture par le daemon. Le cas le plus courant est que l'utilisateur Apache finira par démarrer le daemon au démarrage d'Apache lui-même. Vous devez donc vous assurer que le fichier est accessible en écriture par l'utilisateur qui exécute le processus Apache.
Prudence
Si le fichier de log du daemon n'est pas accessible en écriture, le daemon ne démarrera pas automatiquement, ce qui empêchera le reporting des données.
Vous pouvez utiliser les autorisations d'écriture sur ce fichier comme moyen de restreindre qui peut démarrer le daemon.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
"info"
Définit le niveau de détail des messages enregistrés dans le fichier de log de New Relic . Les valeurs possibles, par ordre croissant de détail, sont :
error
warning
info
healthcheck
debug
Les paramètres les plus détaillés peuvent générer beaucoup d’informations très rapidement. healthcheck enregistre le nombre exact d'applications connectées. Si nécessaire, définissez debug sur de courtes périodes pour identifier les problèmes.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
(dépend du système d'exploitation)
Définit le nom du fichier dans lequel le daemon enregistrera son ID de processus (pid).
Ce fichier est utilisé par le script de démarrage et d'arrêt du daemon pour déterminer si le daemon est déjà en cours d'exécution ou non.
Portée:
SYSTEM
Type :
Chaîne ou nombre
Défaut:
"@newrelic" sous Linux, "/tmp/.newrelic.sock" sinon
Conseil
À partir de la version 9.2.0.247, l'agent PHP prend en charge un nouveau paramètre, newrelic.daemon.address, qui sert d'alias à newrelic.daemon.port. Vous pouvez utiliser l'un ou l'autre pour spécifier l'emplacement du daemon PHP New Relic. Si les deux valeurs sont définies, newrelic.daemon.address a la priorité.
Définit le point de terminaison du socket pour les communications entre l'agent et le daemon.
Cela peut être spécifié de quatre manières.
Pour utiliser un fichier spécifié comme socket de domaine UNIX (UDS), fournissez un nom de chemin absolute sous forme de chaîne. Il s'agit de la valeur par défaut sur les systèmes non Linux.
Pour utiliser un port TCP standard, spécifiez un numéro compris entre 1 et 65 534.
Pour utiliser un socket abstrait, utilisez la valeur @newrelic-daemon (disponible pour la version d'agent 5.2.0.141 ou supérieure). Il s'agit de la valeur par défaut sur le système Linux.
Pour vous connecter à un daemon qui s'exécute sur un hôte différent (utile pour les environnements conteneurs), définissez cette valeur sur host:port, où host désigne soit un nom d'hôte, soit une IP, et port désigne un numéro de port valide. IPv4 et IPv6 sont tous deux pris en charge. Ceci est disponible pour la version d'agent 9.2.0.247 ou supérieure.
Prudence
Les données transmises de l'agent au démon ne sont pas cryptées. La seule exception à cette règle est l’ obfuscation SQL qui se produit avant l’envoi de données au démon. Nous vous recommandons d'utiliser uniquement une connexion réseau privée entre l'agent et le démon (cela s'applique uniquement lorsque l'agent et le démon s'exécutent sur des hôtes différents).
Si vous utilisez des numéros de port, le système Unix exige que les ports compris entre 1 et 1023 nécessitent que le daemon soit exécuté en tant que super-utilisateur. Si le daemon utilise un port non standard, cette variable définit également le numéro de port que l'agent utilisera pour communiquer avec le daemon.
Important
Si vous utilisez le mécanisme de démarrage newrelic.cfg pour le daemon, ce paramètre et le paramètre address dans ce fichier doivent correspondre.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Définit les informations d’identification de l’hôte et de l’utilisateur à utiliser comme proxy de sortie.
Ceci n'est utilisé que si votre site nécessite un proxy pour accéder aux serveurs de collecte de données New Relic. Cela peut prendre l'une des formes suivantes, selon la configuration du proxy :
hostname
hostname:port
user@hostname
user@hostname:port
user:password@hostname
user:password@hostname:port
proxytype://user:password@hostname:port
Un type de proxy HTTP est supposé, sauf si un autre type de proxy est spécifié. Dans ce cas, le type de proxy peut être http, socks4, socks4a ou socks5.
Portée:
SYSTEM
Type :
Booléen
Défaut:
true
Ce paramètre est ignoré sur les versions 8.0 et supérieures de l'agent PHP, et HTTPS sera toujours utilisé pour communiquer avec New Relic.
Sur les versions de l' agent PHP inférieures à 8.0, contrôle si la communication avec le collecteur New Relic doit ou non utiliser une connexion HTTP sécurisée. L'agent communique avec New Relic via HTTPS par défaut, et New Relic requiert HTTPS pour tout le trafic vers APM et l'API REST New Relic.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Définit l'emplacement d'un fichier contenant des certificats CA au format PEM. Une fois définis, les certificats de ce fichier seront utilisés pour authentifier le collecteur New Relic. Dans la plupart des cas, il ne devrait pas être nécessaire de configurer un bundle CA. L'agent PHP New Relic est fourni avec les certificats CA nécessaires.
Si newrelic.daemon.ssl_ca_path est également défini, les certificats de ce fichier seront recherchés en premier, suivis des certificats contenus dans le répertoire newrelic.daemon.ssl_ca_path .
Ce paramètre n'a aucun effet lorsque newrelic.daemon.ssl est défini sur false.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Définit l'emplacement d'un répertoire contenant des certificats d'autorité de certification approuvés au format PEM. Une fois défini, les certificats de ce répertoire seront utilisés pour authentifier le collecteur New Relic. Dans la plupart des cas, il ne devrait pas être nécessaire de configurer un chemin d'accès CA. L'agent PHP New Relic est fourni avec les certificats CA nécessaires.
Si newrelic.daemon.ssl_ca_bundle est également défini, il sera recherché en premier, suivi des certificats contenus dans newrelic.daemon.ssl_ca_path.
Ce paramètre n'a aucun effet lorsque newrelic.daemon.ssl est défini sur false.
Portée:
SYSTEM
Type :
Chaîne de spécification de temps ; par exemple, "1s" ou "5m"
Défaut:
"0"
Définit le temps maximum pendant lequel l'agent doit attendre le démarrage du daemon après le déclenchement du lancement d'un daemon. Une valeur de "0" empêche l'agent d'attendre. Les unités autorisées sont "ns", "us", "ms", "s", "m" et "h".
La valeur de délai d'expiration spécifiée sera transmise au daemon via l'indicateur --wait-for-port . Cela provoque le blocage du démarrage du daemon jusqu'à ce qu'un socket soit acquis ou jusqu'à ce que le délai d'attente soit écoulé.
Recommandation : si vous définissez un délai d’expiration, la valeur recommandée est de "2s" à "5s". Il est recommandé de définir ce délai d'expiration uniquement lorsque des tâches d'arrière-plan de longue durée sont instrumentées, car en cas de problèmes de démarrage du daemon, l' agent se bloquera pendant le délai d'expiration donné à chaque démarrage de transaction.
Les logs en contexte
agent PHP version 10.1.0 vous permet de transférer votre log PHP avec les logs APM dans le contexte. Depuis la version 10.3.0, les métriques de logging et la fonctionnalité agent transfert de logsont activées par défaut. La valeur newrelic.application_logging.enabled contrôle si la fonctionnalité logs en contexte est active ou inactive.
Gardez à l’esprit que la modification de vos paramètres dans votre fichier de configuration d’agent local (newrelic.ini) nécessite un redémarrage du serveur Web pour qu’ils prennent effet. Si vous ne le faites pas, les modifications risquent de ne pas prendre effet immédiatement.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Définissez sur true pour activer les logs principaux en fonction du contexte. Lorsque cette option est activée, instrumentation supplémentaire du framework de logging est activée, que les logs soient ou non envoyés à New Relic.
Définissez sur false pour désactiver complètement cette fonctionnalité, y compris la collecte des métriques log et le transfert de log .
Les logs en contexte sont désormais activés par défaut. Si vous avez désactivé cette fonctionnalité, assurez-vous de redémarrer votre application, sinon vos modifications ne prendront pas effet immédiatement.
Si vous utilisez un framework de logging pris en charge, vous pouvez demander à l' agent de transmettre votre log d'application à New Relic.
newrelic.application_logging.forwarding.enabled active ou désactive le transfert de logs.
newrelic.application_logging.forwarding.max_samples_stored limite le nombre de logs que votre application transmet à New Relic.
newrelic.application_logging.forwarding.log_level vous permet de choisir les types de logs que votre application transmet à New Relic.
newrelic.application_logging.forwarding.labels.enabled active ou désactive l'envoi de balises personnalisées (étiquettes) avec les messages de log transmis par l'agent.
newrelic.application_logging.forwarding.labels.exclude vous permet de choisir les étiquettes envoyées avec le message de log transféré par l'agent.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Permet l'envoi du log d'application à New Relic.
Définissez ceci sur true pour que votre log soit envoyé à New Relic. Cela transfère le log directement depuis l' agent PHP avec des liens métadonnées qui permettent à notre fonctionnalité de logs en contexte de fonctionner. L'agent PHP n'écrit aucune métadonnées dans le log de sortie de application .
Définissez ceci sur false si vous ne souhaitez pas que votre log soit envoyé à New Relic. Lorsque enabled est défini sur false, aucune donnée log n'est envoyée à New Relic et la sortie du log de application reste inchangée.
Exemple de fichier de configuration (newrelic.ini) :
newrelic.application_logging.enabled=true
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 old 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
L'utilisation de la fonctionnalité de transfert de logaugmente votre ingestion de données, ce qui peut affecter votre facturation. Pour plus d'informations, consultez notre documentation sur le suivi de votre ingestion de données.
Portée:
PERDIR
Type :
Entier
Défaut:
10000
Max:
20000
Définissez la valeur sur un entier positif pour spécifier le nombre maximal de lignes log par minute à envoyer.
Définissez cette valeur sur 0 pour désactiver efficacement l’envoi du log.
Définissez cette valeur sur une valeur inférieure pour réduire la quantité de lignes log envoyées. Cela peut entraîner un échantillonnage log .
Définissez cette valeur sur une valeur plus élevée pour envoyer plus de lignes log .
Chaque log reçoit la même priorité que sa transaction associée. Certains logs peuvent ne pas être inclus car ils sont limités par max_samples_stored. Par exemple, si le logging max_samples_stored est défini sur 10 000 et qu'une transaction 1 comporte 10 000 entrées log, seules les entrées log de la transaction 1 seront enregistrées. Si la transaction 1 contient moins de 10 000 logs, vous recevez tous les logs de la transaction 1. S'il reste de la place, vous recevez l'intégralité du log de la transaction 2, et ainsi de suite. les entrées de log avec des priorités plus élevées sont conservées par rapport à celles avec des priorités plus faibles.
Conseil
Cela fait référence au nombre de logs envoyés par minute. La définition max_samples_stored sur une valeur inférieure à 12 aura pour effet de ne pas envoyer de log. Tout entier non négatif est valide, mais actuellement la valeur maximale prise en charge est 20 000.
Exemple de fichier de configuration (newrelic.ini) :
Il est possible de contrôler le niveau de log des messages transmis par l' agent. Les niveaux de log reconnus suivent la spécification PSR-3 et sont les suivants (de la gravité la plus élevée à la plus faible) :
EMERGENCY
ALERT
CRITICAL
ERROR
WARNING
NOTICE
INFO
DEBUG
Lorsqu'un niveau de log est spécifié pour l' agent, tous les messages de ce niveau de log et supérieurs seront signalés. Par exemple, si vous définissez votre niveau de log sur ALERT, vous recevrez un log pour les gravités ALERT et EMERGENCY. Le niveau de log par défaut est WARNING.
Exemple de fichier de configuration (newrelic.ini) :
Permet de filtrer les balises personnalisées (étiquettes) envoyées avec les logs transmis par l'agent.
La valeur est une liste de chaînes séparées par des virgules. Chaque chaîne de la liste sera mise en correspondance de manière insensible à la casse avec les étiquettes actuellement définies, et toutes les correspondances exactes seront supprimées des étiquettes transmises.
Par exemple, considérons la définition suivante des étiquettes :
newrelic.labels="Data Center, Business, Cost code"
Les règles d'exclusion suivantes filtreront les étiquettes Business et Cost code car la comparaison est effectuée de manière insensible à la casse.
La valeur INI newrelic.labels permet de définir des étiquettes qui contiennent le caractère virgule (","). Ces étiquettes ne peuvent pas être filtrées à l'aide de la valeur INI exclude, car elle s'appuie sur des virgules pour séparer les règles d'exclusion. Il est recommandé de ne pas utiliser le caractère virgule dans les valeurs d'étiquette si vous excluez ces étiquettes de l'ajout au log des messages.
Données de contexte du log
L'agent PHP capture les données de contexte pour la bibliothèque Monolog et ajoute ce contexte comme attribut à votre log transféré. Vous pouvez contrôler le contexte ajouté par votre agent via les paramètres de la section context_data, dans la section forwarding .
newrelic.application_logging.forwarding.context_data.enabled ajoute des données de contexte de Monolog à votre attribut de log
newrelic.application_logging.forwarding.context_data.include définit les clés d'attribut trouvées dans votre log transféré
newrelic.application_logging.forwarding.context_data.exclude définit les clés d'attribut exclues dans votre log transféré
Type
Booléen
Défaut
false
Définissez cette valeur sur true pour ajouter des données de contexte comme attribut de log.
Définissez cette valeur sur false si vous ne souhaitez pas que les données de contexte soient ajoutées en tant qu'attribut à votre log.
Type
Liste de chaînes
Défaut
(aucun)
Lorsque vous appliquez des règles d'attribut à l'attribut de contexte log, la règle include supprime tous les attributs non définis dans l'ensemble de règles. Il s’agit d’un comportement différent des autres types d’attributs agent .
Si les attributs de contexte log n'apparaissent pas comme prévu, vous devez consulter l'ensemble de règles newrelic.attributes.include pour confirmer que les attributs manquants font partie de l'exclusion. Nous vous recommandons de définir newrelic.loglevel=verbosedebug pour activer également le log des messages détaillés de l' agent. Une fois mis à jour, recherchez les messages de l' agent concernant l'attribut exclu. Cela peut vous donner des indications sur la manière d’ajuster les règles d’inclusion/exclusion.
Si context_data est activé pour le transfert de log, toutes les clés d'attribut trouvées dans cette liste apparaîtront dans les enregistrements log . Une liste vide enverra toutes les clés d'attribut par défaut.
Si toutes les listes include sont vides, tous les attributs de contexte log sont transmis.
Type
Liste de chaînes
Défaut
(aucun)
Si context_data est activé pour le transfert de log, toutes les clés d'attribut trouvées dans cette liste sont exclues des enregistrements log .
Laisser ce champ vide entraîne un comportement par défaut. l'attribut peut toujours être exclu si une règleinclude existe.
L'agent PHP transmet uniquement les données de contexte log qui ont une clé de chaîne et une valeur, qui est une chaîne ou un scalaire (int, double, booléen).
Décoration des logs
L'agent PHP peut également collecter et ajouter des liens cryptés vers les enregistrements log Monolog pour permettre aux logs en contexte de fonctionner avec les données log transmises par un redirecteur de logtiers. Pour activer cette fonctionnalité, utilisez l'option newrelic.application_logging.local_decorating.enable :
Portée:
PERDIR
Type :
Booléen
Défaut:
false
Cela permet l'ajout de liens mémoriels vers les enregistrements log Monolog. Réglez ceci sur true pour activer cette fonctionnalité. Laissez ce paramètre sur false si vous utilisez la APM fonctionnalité de transfert de logpour transférer votre log vers New Relic.
Important
La fonctionnalité de décoration log apparaît pour la première fois dans agent PHP sortie 10.13.0.1.
La fonctionnalité de décoration log nécessite des étapes supplémentaires pour garantir que les métadonnées de liaison sont contenues dans le message de log. Consultez la page (PHP logs en contexte)[/docs/log/log-context/configure-log-context-php] pour plus d'informations sur l'utilisation de cette fonctionnalité.
Si vous activez à la fois le transfert de loget la décoration log, il est très probable que votre log soit envoyé à New Relic en double.
Métriques de Log
L'agent PHP peut collecter des métriques liées à un événement de log pour le framework de logging pris en charge. La création de ces métriques est contrôlée par l'option newrelic.application_logging.metrics.enable :
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Permet la capture d'informations métriques sur votre log et votre niveau de log, qui sont affichées dans un graphique sur la page APM Summary.
Laissez ce paramètre sur vrai pour permettre à l' agent de capturer des informations métriques sur votre log.
Réglez ceci sur false pour désactiver cette fonctionnalité.
Important
Si vous désactivez la collecte des métriques log, le graphique log sur la page de résumé apparaîtra vide.
Important
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 le double de données log . 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.
Traceur de transaction .ini paramètres
Les valeurs de ces paramètres sont utilisées pour contrôler la trace de la transaction.
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
Définissez ceci sur une liste séparée par des virgules de fonctions ou de méthodes définies par l'utilisateur à instrument:
"myfunction,myclass::method,otherfunction"
Les fonctions PHP internes ne peuvent pas avoir de traçage personnalisé.
Vous pouvez ajouter des fonctions personnalisées à la liste avec chaque fichier PERDIR, mais vous ne pouvez pas supprimer une fonction ou une méthode qui a déjà été ajoutée. Si vous souhaitez ajouter par programmation des fonctions ou des méthodes à instrumenter, utilisez newrelic_add_custom_tracer() API l'appel de fonction .
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Active ou désactive le traceur de transaction.
Le traceur crée une trace de transaction détaillée pour les transactions qui prennent plus de temps que le seuil, tel que défini par la valeur newrelic.transaction_tracer.threshold . Une seule trace de transaction par application et par cycle de collecte est stockée et il s'agit toujours de la transaction la plus lente au cours de ce cycle.
Les traces de transaction sont utiles pour diagnostiquer pourquoi une transaction particulière a été lente. À moins que la mémoire et les performances ne soient essentielles, elles ne devraient presque jamais être désactivées. L'activation de cette option a un impact très léger sur les performances et utilise plus de mémoire.
Active ou désactive la demande d'explication des plans de la bibliothèque MySQLi et PDO MySQL pour les appels de requête lente. Les plans explicatifs ne seront disponibles que lorsque newrelic.transaction_tracer.slow_sql est défini sur true et newrelic.transaction_tracer.record_sqln'est pas défini sur "off".
Portée:
PERDIR
Type :
Durée
Défaut:
"500"
Définit le seuil au-delà des requêtes qui sont considérées comme « lentes » et donc candidates à la page Slow Queries . Spécifiez la durée sous forme de valeur absolue avec des unités. L'unité par défaut est en millisecondes si aucune n'est spécifiée.
Example durations
"200ms"
"1s250ms"
"1h30m"
"750us"
Portée:
SYSTEM
Type :
Booléen
Défaut:
false
Active ou désactive la prise en charge du traçage des fonctions internes (c'est-à-dire des fonctions écrites en C et fournies via la bibliothèque standard PHP ou les extensions PECL). Lorsque cette option est activée, les fonctions internes apparaissent dans la trace de la transaction comme les fonctions écrites en PHP.
L'activation de cette option peut entraîner un ralentissement des transactions, en particulier lors de la collecte de nombreuses traces à partir de PHP 5.x. L'activation de cette option n'est recommandée que lors du débogage spécifique de problèmes de performances où une fonction interne est suspectée d'être lente.
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
"obfuscated"
Définit comment les requêtes sont enregistrées (le cas échéant).
Lors de l'enregistrement de la trace de transaction en interne, la requête complète pour les appels de requête lente est enregistrée. L'envoi de cette requête à New Relic peut avoir de graves conséquences en matière de sécurité. Par conséquent, par défaut, toutes les instructions de base de données sont masquées avant d'être envoyées à New Relic. L'obfuscation n'est pas réversible, car elle remplace les chaînes et les nombres de n'importe quelle requête par des points d'interrogation. Les seules choses qui survivent intactes sont les noms de champs, et non leurs valeurs.
Si vous testez avec des données qui ne sont pas sensibles et que vous avez besoin de voir la requête brute dans la trace de transaction, définissez cette valeur sur "raw".
Si vous ne souhaitez pas que la requête soit enregistrée du tout, définissez cette valeur sur "off".
Important
Réglez toujours cette valeur sur "obfuscated" ou "off" dans n’importe quel environnement de production.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Utilisez ce paramètre pour activer ou désactiver la fonctionnalité de requête lente. Lorsqu'il est activé, il va :
Enregistrez les 10 requêtes de base de données les plus lentes par application et par minute.
Créez une trace d'appels menant à la requête.
Si cette variable est définie sur false ou si l'enregistrement SQL est désactivé, l'agent New Relic ne collecte aucune donnée de requête lente.
Portée:
PERDIR
Type :
Durée
Défaut:
"500"
Cela définit le seuil au-dessus duquel l' agent enregistrera la stack PHP complète pour tracer la transaction pour laquelle les requêtes sont enregistrées.
Spécifiez la durée sous forme de valeur absolue avec des unités. L'unité par défaut est en millisecondes si aucune n'est spécifiée.
Example durations
"200ms"
"1s250ms"
"1h30m"
"750us"
la trace des appels peut consommer de la mémoire, donc faites attention à ne pas définir cette valeur trop basse. Cette variable n'a aucune signification si newrelic.transaction_tracer.record_sql est défini sur "off".
Portée:
PERDIR
Type :
Durée
Défaut:
"apdex_f"
Utilisez cette variable pour définir le seuil au-delà duquel les transactions sont éligibles au traçage. Les valeurs disponibles incluent :
Utilisez n’importe quelle autre chaîne de durée pour définir un seuil de temps spécifique. Spécifiez la durée en valeur absolue et l'unité de mesure. Si aucune valeur n'est spécifiée, l'unité par défaut est la milliseconde.
Example durations
"200ms"
"1s250ms"
"1h30m"
"750us"
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Utilisez ce paramètre pour activer ou désactiver la collecte de requêtes d'entrée DQL avec requête lente et trace de transaction. Lorsqu'ils sont activés, ils apparaîtront avec la requête lente et la trace de transaction.
Portée:
PERDIR
Type :
Nombre
Défaut:
0
Spécifie le nombre maximal de segments que l' agent PHP doit enregistrer pour la transaction Web. Une fois ce maximum atteint, l’échantillonnage aura lieu.
L'agent PHP rapporte la trace de transaction et les traces distribuées sous forme d'une collection de segments. Chaque segment représente une méthode ou un appel de fonction dans une trace de transaction. La valeur par défaut de cette configuration est 0, indiquant que l' agent PHP doit capturer tous les segments lors d'une transaction Web. À la fin d'une transaction, il assemble les segments les plus prioritaires à signaler dans une trace de transaction.
Pour les processus PHP de longue durée avec des centaines de milliers ou des millions d'appels de fonction, définir cette valeur sur une valeur supérieure à 1 empêche l'agent PHP d'épuiser la mémoire système lors de l'enregistrement des segments.
La taille du segment peut varier en fonction de la longueur du nom de la méthode correspondante, de la longueur de son nom de classe et du nombre d'appels ultérieurs effectués par la méthode. Cela dit, une estimation prudente est de 400 octets par segment. Pour limiter l'agent PHP à 40 Mo pour la capture de segment, définissez cette valeur sur 100000. Si cette valeur est définie sur une valeur inférieure à 2000, elle limite davantage le nombre total de segments signalés pour le suivi de la transaction.
Ce paramètre de configuration concerne uniquement les processus Web PHP ; il n'affectera pas les processus PHP CLI. Pour définir une limite pour les processus CLI, utilisez newrelic.transaction_tracer.max_segments_cli.
Portée:
PERDIR
Type :
Nombre
Défaut:
100000
Spécifie le nombre maximal de segments que l'agent PHP doit enregistrer pour les transactions CLI. Une fois ce maximum atteint, l’échantillonnage aura lieu.
L'agent PHP rapporte la trace de transaction et les traces distribuées sous forme d'une collection de segments. Chaque segment représente une méthode ou un appel de fonction dans une trace de transaction. La valeur par défaut de cette configuration est 100000, indiquant que l' agent PHP doit capturer tous les segments lors d'une transaction Web. À la fin d'une transaction, il assemble les segments les plus prioritaires à signaler dans une trace de transaction.
Pour les processus PHP de longue durée avec des centaines de milliers ou des millions d'appels de fonction, définir cette valeur sur une valeur supérieure à 1 empêche l'agent PHP d'épuiser la mémoire système lors de l'enregistrement des segments.
La taille du segment peut varier en fonction de la longueur du nom de la méthode correspondante, de la longueur de son nom de classe et du nombre d'appels ultérieurs effectués par la méthode. Cela dit, une estimation prudente est de 400 octets par segment. Pour limiter l'agent PHP à 40 Mo pour la capture de segment, définissez cette valeur sur 100000. Si cette valeur est définie sur une valeur inférieure à 2000, elle limite davantage le nombre total de segments signalés pour le suivi de la transaction.
Ce paramètre de configuration concerne uniquement les processus PHP CLI ; il n'affectera pas les processus Web PHP. Pour définir une limite pour les processus Web, utilisez newrelic.transaction_tracer.max_segments_web.
Autre traceur .ini paramètres
Les valeurs de ces paramètres sont utilisées pour contrôler diverses fonctionnalités du traceur.
Important
Le traing inter-applications est obsolète et dans l'agent PHP version 9.21.0.311 a été désactivé par défaut. Nous recommandons la fonctionnalité de tracing distribué, qui améliore le tracing inter-application.
Portée:
PERDIR
Type :
Booléen
Défaut:
false
Activer ou désactiver le traceur inter-application . Le traceur inter-applicationinsère des en-têtes HTTP dans requests sortantes et la réponse afin de relier entre elles les métriques Web des transactions et de tracer les transactions entre les applications.
Le tracing distribué et le tracing inter-application ne peuvent pas être utilisés simultanément. La configuration par défaut de l'agent PHP active le tracing distribué et désactive le tracing inter-application .
Activer ou désactiver le tracing distribué. Il est activé par défaut dans l'agent PHP 9.21.0 et supérieur. Lorsque le traceur de transaction et la fonctionnalité de tracing distribué de agent sont activés, l' agent insérera des en-têtes dans requests sortantes et analysera requests entrantes pour tracer les en-têtes distribués.
Définissez cette valeur sur vrai pour exclure l'en-tête de suivi distribué New Relic qui est attaché aux requests sortantes et pour vous fier uniquement aux en-têtes W3C Trace Context pour le suivi distribué. Si cela est faux, les deux types d’en-têtes sont attachés aux requests sortantes.
L'en-tête de tracing distribué de New Relic permet l'interopérabilité avec les agents plus anciens qui ne prennent pas en charge les en-têtes W3C Trace Context . Les versions d'agent qui prennent en charge les en-têtes W3C Trace Context les prioriseront par rapport aux en-têtes New Relic pour le tracing distribué.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Span événement sont signalés pour tracing distribué. Le reporting Span événement nécessite que le tracing distribué soit activé. Cette option active/désactive le reporting des événements span.
Portée:
PERDIR
Type :
Entier
Défaut:
0
Span événement sont signalés pour tracing distribué. Cette valeur définit le nombre maximum d'événements span envoyés au collecteur par cycle de collecte. Une valeur de 0 utilisera la valeur par défaut de l'agent de 2000. Le réglage maximum est 10000.
Portée:
PERDIR
Type :
Chaîne
Défaut:
""
Configure l'observateur de trace utilisé pour le Infinite Tracing. Si ce champ est vide, la prise en charge du Infinite Tracing sera désactivée. Cela nécessite que le tracing distribué et l'événement span soient activés.
Portée:
PERDIR
Type :
Entier
Défaut:
443
Configure le port TCP/IP utilisé pour communiquer avec l'observateur de trace Infinite Tracing. Ce paramètre est ignoré si newrelic.infinite_tracing.trace_observer.host est vide. Ce paramètre n’aura généralement pas besoin d’être modifié.
Portée:
PERDIR
Type :
Entier (1000 ou plus)
Défaut:
100000
Définit le nombre d'événements de portée qui peuvent être mis en file d'attente pour transmission à l'observateur de trace de Infinite Tracing. L'agent gère en interne les événements SPAN pour le Infinite Tracing dans des lots SPAN. Ces lots de span peuvent contenir un maximum de 1000 spans. Par conséquent, la taille de la file d'attente des événements SPAN ne peut pas être inférieure à 1000, sinon aucun lot SPAN ne peut être mis en file d'attente. Si une taille de file d'attente inférieure à 1 000 est spécifiée, la taille minimale de 1000 est utilisée.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Activer ou désactiver le collecteur d'erreurs. Lorsqu'il est activé, l'agent collecte et signale les erreurs PHP à l'UI New Relic.
L'agent enregistre uniquement l'erreur la plus grave pour chaque transaction, et jusqu'à 20 erreurs par cycle de collecte.
Lorsque cette option est activée, l'agent collecte les erreurs renvoyées par les fonctions MySQL comme s'il s'agissait d'erreurs PHP.
Portée:
PERDIR
Type :
Booléen
Défaut:
false
Définissez cette valeur sur true pour attribuer la priorité la plus élevée aux erreurs identifiées via la fonction API newrelic_notice_error() .
Remarque : toute erreur non détectée se verra attribuer une priorité encore plus élevée. Elle aura donc la priorité sur les erreurs signalées via la fonction API newrelic_notice_error() .
Portée:
PERDIR
Type :
Chaîne
Défaut:
(aucun)
Une liste séparée par des virgules de noms de classes d'exceptions entièrement qualifiés que l'agent doit ignorer. Lorsqu'une exception non gérée se produit, l'agent exécutera l'équivalent de $exception instanceof Class pour chacune des classes répertoriées. Si l’une de ces vérifications renvoie vrai, l’agent n’enregistrera pas d’exception.
Définit les niveaux d’erreur de l’agent PHP sur ignore. La valeur de ce paramètre utilise une syntaxe similaire à l'option error_reporting de PHP. Par exemple, pour configurer l'agent PHP pour ignorer les erreurs de niveau E_WARNING et E_ERROR, utilisez :
Dans l'agent antérieur à la version 3.0, la valeur par défaut de cette valeur était false. La définition de cette option impliquait newrelic.transaction_tracer.detail = 1.
Pour activer le suivi des modules Drupal, définissez ceci sur true. Cette option a le même impact sur les performances que newrelic.transaction_tracer.detail. Cela permettra l'enregistrement des fonctions du module Drupal et du nombre d'appels, et ils s'afficheront sous l'onglet Modules, un peu comme le Web des transactions.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Pour activer le suivi des hooks WordPress, définissez ceci sur true. Cela permettra l'enregistrement des hooks, plugins et thèmes WordPress, et ils s'afficheront sous l'onglet dans WordPress l'UI New Relic.
Portée:
PERDIR
Type :
Chaîne
Défaut:
"plugin_callbacks"
Définit les options selon lesquelles les hooks WordPress sont instrumentés. L'agent New Relic peut fournir différents niveaux d'informations détaillées dans les hooks WordPress. Par défaut, seuls les rappels de plugins/thèmes sont instrumentés ("plugin_callbacks"). Au prix d'une augmentation des frais généraux de l'agent, il est possible d'étendre l'instrumentation à toutes les fonctions de rappel de hook (« all_callbacks »). La troisième option consiste à monitorer les hameçons sans rappel instrumenté ("seuil"). Cette option ne donne pas d'informations détaillées sur les plugins/thèmes. En savoir plus sur l’instrumentation spécifique à WordPress ici.
Portée:
PERDIR
Type :
Durée
Défaut:
1ms
Définit le seuil au-dessus duquel l'agent New Relic enregistrera l'exécution du hook WordPress. Utilisé lorsque newrelic.framework framework est défini sur « seuil ».
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
C'est la même chose que newrelic.webtransaction.name.functions, sauf qu'il utilise des noms de fichiers pour nommer le site Web de transaction. Les noms de fichiers peuvent être des expressions régulières POSIX standard à utiliser avec PCRE ; par exemple, "controllers/actions/.*".
Portée:
PERDIR
Type :
Chaîne (utilisez des guillemets)
Défaut:
""
À moins que l' agent New Relic détecte un framework spécifique, tel que Drupal ou Wordpress, les transactions Web sont nommées d'après le fichier PHP initial ; par article.php exemple,.
Lorsque le fichier initial est un répartiteur, ce schéma de nommage produit des données peu utiles. Utilisez cette variable pour spécifier une liste de fonctions qui sont les « actions » générées par le répartiteur. Le nom de la transaction web sera la première fonction d'action exécutée.
Example dispatch function naming
Si index.php distribue aux fonctions nommées :
login,
logout,
admin,
show, et
edit
Vous définiriez cette valeur sur "login,logout,admin,show,edit".
Le site Web de transaction sera nommé login, logout, etc. au lieu de /index.php (le nom du fichier initial).
Portée:
PERDIR
Type :
Booléen
Défaut:
false
Lorsque cette option est activée, elle supprime tout contenu dans l'URI de la demande après le nom du script. Par exemple, cela supprimerait le /xyz/zy de fin de /path/to/foo.php/xyz/zy.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Si false, l'agent ne signalera pas les métriques de l'instance datastore, n'ajoutera pas host le port_path_or_id paramètre à la transaction ou ne ralentira pas la trace SQL.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Si false, l' agent n'ajoutera pas le paramètre database_name à la transaction ou ne ralentira pas la trace SQL.
Paramètres d'attribut
Cette section répertorie les paramètres qui affectent la collecte et la création de rapports d'attributs.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Activer ou désactiver la collecte des attributs générés par l' agent PHP ou générés par l'utilisateur via newrelic_add_custom_parameter(). Ce paramètre aura la priorité sur tous les autres paramètres de configuration d'attribut.
Il s'agit d'une famille d'options configuration qui permettent un contrôle précis sur les destinations des attributs. Pour plus d'informations, voir Activation et désactivation de l'attribut.
Événements personnalisés
Cette section répertorie les paramètres qui affectent le rapport d'événement personnalisé.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Activer ou désactiver la collecte des événements générés par l'utilisateur via newrelic_record_custom_event(). Ce paramètre aura la priorité sur tous les autres paramètres de configuration d'attribut.
Un entier positif spécifiant le nombre maximal d'événements personnalisés par minute à envoyer.
La définition de cette valeur sur 0 désactivera effectivement l'envoi d'événements personnalisés. Le paramètre newrelic.custom_insights_events.enabled est le moyen préféré pour activer ou désactiver la génération d'événements personnalisés.
Réglez cette valeur sur une valeur inférieure pour réduire la quantité d'événements personnalisés envoyés (cela peut provoquer un échantillonnage d'événements personnalisés). Définissez cette valeur sur une valeur plus élevée pour envoyer plus de lignes d'événements personnalisés.
Important
La variable INI newrelic.custom_events.max_samples_stored a été ajoutée dans la sortie 10.4.0.316.
Métriques au niveau du code
Cette section répertorie les paramètres qui affectent le reporting des métriques du niveau du code.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Activer ou désactiver la collecte de métriques au niveau du code.
Important
La variable INI newrelic.code_level_metrics.enabled a été ajoutée dans la sortie 10.4.0.316 et a été désactivée par défaut. Les métriques au niveau du code sont activées par défaut à partir de la version 10.6.0.
Important
Cela ne peut être défini que via une variable d'environnement.
Une tag de sortie (telle que v0.1.209 ou sortie-209).
Erreurs configuration de la boîte de réception
La définition de l’une des balises suivantes vous aidera à identifier les versions de votre logiciel qui génèrent les erreurs.
NEW_RELIC_METADATA_SERVICE_VERSION créera tag.service.version sur les données d'événement contenant la version de votre code qui est déployée, dans de nombreux cas une version sémantique telle que 1.2.3, mais pas toujours.
NEW_RELIC_METADATA_RELEASE_TAG créera tag.releaseTag sur les données d'événement contenant la tag de sortie (comme v0.1.209 ou sortie-209).
NEW_RELIC_METADATA_COMMIT créera tag.commit sur les données d'événement contenant le commit sha. Le SHA entier peut être utilisé ou seulement les sept premiers caractères (par exemple, 734713b).
Une prochaine version de la boîte de réception des erreurs suivra automatiquement les versions de votre logiciel qui génèrent des erreurs. Toutes les données de version seront également affichées dans CodeStream.
Paramètres de gestion des vulnérabilités
Cette section répertorie les paramètres qui affectent la création de rapports sur les packages PHP.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Remarques :
Introduit dans la version 10.17 de l'agent PHP
Lorsque la valeur est true, l'agent envoie des informations de détection de package qui peuvent être visualisées sur la page d'environnement.
Portée:
PERDIR
Type :
Booléen
Défaut:
false
Remarques :
Introduit dans la version 11.2 de l'agent PHP
Lorsqu'il est défini sur true, l' agent essaiera d'utiliser APId'exécution de Composer pour la détection package .
Autre .ini paramètres
Cette section répertorie les paramètres newrelic.ini restants.
Portée:
SYSTEM
Type :
Booléen
Défaut:
(aucun)
Activer ou désactiver l'agent New Relic. Par défaut, l'agent PHP New Relic est activé pour tous les répertoires.
Si vous avez plusieurs sites sur votre serveur Web mais que vous souhaitez que l' agent PHP monitore uniquement des sites spécifiques :
Assurez-vous que newrelic.enabled est défini sur true au niveau global (SYSTEM) dans votre fichier newrelic.ini .
Définissez newrelic.enabled sur false pour un ou plusieurs sites spécifiques par répertoire (PERDIR).
Si vous devez désactiver l'agent globalement, définissez la valeur newrelic.enabled sur false dans le fichier newrelic.ini .
Lorsque l'agent est désactivé globalement, il ne s'initialise pas complètement. Il suppose que vous le désactivez globalement pour une raison critique, et l'agent tentera d'avoir un impact aussi proche que possible de zéro sur PHP.
Important
Vous ne pouvez pas désactiver globalement l'agent, puis l'activer de manière sélective pour chaque répertoire à l'aide de .htaccess.
Portée:
SYSTEM
Type :
Chaîne (utilisez des guillemets)
Défaut:
"/var/log/newrelic/php_agent.log"
Ceci identifie le nom du fichier pour le logging des messages. Ceci est utile pour déboguer tout problème avec l'agent. Quel que soit le réglage que vous choisissez, assurez-vous que :
Les autorisations pour le répertoire contenant et le fichier lui-même sont correctes.
L'utilisateur sous lequel PHP s'exécute peut écrire dans le fichier. Il s’agit généralement du même utilisateur que le serveur Web.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Lorsque défini sur true, l'agent collectera et signalera les données d'événements d'analyse. Les données d'événement permettent à l'UI New Relic d'afficher des informations supplémentaires telles que l'histogramme et le centile.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Lorsque la valeur est true, l'agent collecte et signale les données d'événement d'erreur. Les données d'événement permettent à l'UI New Relic d'afficher des analyses d'erreurs.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Ce paramètre active des fonctionnalités nouvelles et expérimentales au sein de l' agent PHP. Ces indicateurs sont utilisés pour activer de manière sélective les fonctionnalités qui sont censées être activées par défaut dans les versions ultérieures de l' agent PHP.
Portée:
PERDIR
Type :
Booléen
Défaut:
true
Cela permet l'insertion automatique des fragments JavaScript pour . Lorsque cette option est activée, l' agent insère un en-tête et un pied de page dans la sortie HTML qui généreront des mesures sur le temps de chargement de la page pour l'expérience finale de l'utilisateur. Pour plus d'informations, voir Temps de chargement des pages en PHP.
Agent PHP version 6.4 ou supérieure : ce paramètre est défini sur true par défaut.
Portée:
SYSTEM
Type :
Booléen
Défaut:
true
Remarques :
Introduit dans la version 9.4 de l'agent PHP
Permet la détection du framework et de la bibliothèque lorsque le préchargement est activé. Le préchargement a été introduit dans la version 7.4 de PHP. newrelic.preload_framework_library_detection ne prendra effet que lorsque opcache.preload est défini dans le fichier php.ini .