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.
Vous pouvez adapter l'agent Node.js aux exigences de votre application en modifiant votre fichier de configuration newrelic.js ou en définissant une variable d'environnement. Le fichier de configuration réside dans le répertoire racine de votre application. Vous pouvez également configurer quelques options depuis New Relic, ou utiliser Node.js API l'agent d' .
Le paramètre license_key est obligatoire. De plus, nous vous recommandons vivement de définir le app_name afin que votre application ait un nom significatif au lieu du My Application par défaut.
Méthodes de configuration et priorité
La principale méthode pour configurer l’agent Node.js est le fichier de configuration de l’agent (newrelic.js). Vous pouvez également configurer la plupart des paramètres avec des variables d'environnement. Vous pouvez également ajuster certains paramètres avec la configuration côté serveur.
L'agent Node.js utilise cet ordre de priorité pour les méthodes de configuration :
Node.js configuration hierarchy: Les paramètres de configuration côté serveur remplacent les variables d’environnement. Les variables d’environnement remplacent le fichier de configuration de l’agent. Le fichier de configuration remplace les valeurs par défaut de l'agent.
Voici des descriptions détaillées de chaque méthode de configuration :
Le fichier de configuration (newrelic.js) contient tous les paramètres de l'agent Node.js. Lorsque vous installez l'agent Node.js, vous devez copier newrelic.js dans le répertoire racine de votre application. La plupart des paramètres sont vides par défaut ; ils héritent leurs valeurs de config/default.js.
Si votre application s'exécute sur CommonJS, modifiez simplement le type de fichier de configuration en (newrelic.cjs). Ce type de fichier est pris en charge à partir de la version 7.5.0 de l'agent Node.js.
Tous les paramètres de configuration dans newrelic.js ont des variables d’environnement équivalentes. Ils sont utiles, par exemple, si votre agent s’exécute dans un environnement PaaS tel que Heroku ou Microsoft Azure. Les variables d'environnement de l'agent Node.js commencent toujours par NEW_RELIC_.
Ces variables d'environnement sont documentées ci-dessous sous les options de configuration individuelles sous le nom Environ variable. Il existe également deux paramètres rarement utilisés qui ne peuvent être configurés que via des variables d'environnement. Si vous ne savez pas comment spécifier des types plus complexes en tant que variables d’environnement, utilisez le guide de référence.
Les propriétaires et les administrateurs peuvent afficher et configurer quelques paramètres directement dans New Relic. Le cas échéant, les étiquettes d' UI pour la configuration côté serveur sont répertoriées dans ce document sous les options de configuration individuelles sous la forme Server-side label.
Exporter des variables
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section exports.config = { du fichier de configuration newrelic.js de votre application.
Les données de toutes les applications portant le même nom seront fusionnées dans l'UI New Relic, alors définissez cela avec soin. Nous vous highly recommend de remplacer le nom par défaut par un nom descriptif afin d'éviter toute confusion et toute agrégation involontaire de données.
Conseil
Pour Azure l’utilisateur, l’ Node.js agent utilisera APP_POOL_ID s’il est défini, vous pouvez donc utiliser le nom que vous avez choisi pour votre Azure serveur Web sans le définir deux fois.
Définissez sur false pour empêcher le démarrage de l'agent. Ceci est utile lorsque le débogage de votre code nécessite la désactivation temporaire de l'agent. Cela empêche l' agent d'amorcer son instrumentation ou de configurer tous ses éléments, ce qui empêche l' agent de démarrer et de se connecter aux serveurs de New Relic.
Si true, active la capture de tous les en-têtes HTTP, à l'exception de ceux filtrés par les règles exclude . falseSi, les en-têtes collectés sont limités à ceux définis dans les attributs de l'agent Node.js
Toutes les règles d'inclusion/exclusion liées à l'en-tête doivent être au format camelCase pour être filtrées.
Si le seuil de compression des données est atteint dans la charge utile, l'agent compresse les données, en utilisant la compression gzip par défaut. L'option de configuration compressed_content_encoding peut être définie sur deflate pour utiliser la compression dégonflée.
Certificats supplémentaires de confiance pour les connexions SSL, spécifiés sous la forme d'un éventail de chaînes au format PEM. Cela affecte à la fois les connexions à un proxy HTTPS et les connexions à New Relic.
Conseil
Vous pouvez également configurer l'agent pour lire ses certificats à partir d'un fichier :
Ne modifiez pas cette valeur à moins que le support New Relic ne vous demande de la modifier.
nom d'hôte du collecteurNew Relic pour se connecter à Internet ; par exemple, host: 'collector.newrelic.com'.
Ajoute la balise. Spécifiez votre balise sous forme d'objets ou d'une chaîne délimitée par des points-virgules de paires séparées par des deux-points (par exemple, Server:One;Data Center:Primary).
Une URL spécifiant le serveur proxy pour se connecter à Internet. Par exemple, proxy: 'http://user:pass@10.0.0.1:8000/'. Considérations importantes :
Le paramètre du fichier de configuration proxy remplace les autres paramètres proxy du fichier de configuration (proxy_host, proxy_port, proxy_user, proxy_pass) s'ils sont utilisés. De même, la variable d’environnement NEW_RELIC_PROXY_URL remplace les autres paramètres de proxy de variable d’environnement (NEW_RELIC_PROXY_HOST, NEW_RELIC_PROXY_PORT, NEW_RELIC_PROXY_USER et NEW_RELIC_PROXY_PASS) si elle est utilisée.
Nom d'utilisateur pour l'authentification auprès du serveur proxy. L'agent prend uniquement en charge l'authentification HTTP de base.
Variables de logging
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section logging: { du fichier de configuration newrelic.js de votre application.
Définit le niveau de détail enregistré dans les logs de l'agent. Du plus petit détail au plus détaillé, les valeurs possibles sont fatal, error, warn, info, debug ou trace.
Prudence
N'utilisez pas le logging debug ou trace à moins que le support New Relic ne vous demande de les utiliser. Ces niveaux de logging peuvent générer une surcharge excessive. Dans la plupart des situations, utilisez info.
Chemin complet vers le log de l'agent New Relic, y compris le nom de fichier. La valeur par défaut est filepath: require('path').join(process.cwd(), 'newrelic_agent.log'). L'agent arrêtera le processus s'il ne peut pas créer ce fichier. L'agent crée un fichier log avec les mêmes autorisations que le Node.js agent processus parent.
Pour écrire toute le logging dans stdout, définissez ceci sur stdout.
Pour écrire toute le logging dans stderr, définissez ceci sur stderr.
Monitoring de l'IA
Cette section comprend la Node.js agent configuration pour la mise en place monitoring de l'IA.
Important
Vous devez activer le tracing distribué pour capturer les données AI. Il est activé par défaut dans l'agent Node.js 8.3.0 et supérieur. Si vous avez activé le mode haute sécurité, monitoring de l'IA ne fonctionnera pas.
Important
Lorsque cette option est activée, le monitoring de l'IA enregistrera une copie en continu des entrées et des sorties envoyées vers et depuis les modèles que vous choisissez de monitorer, y compris toutes les informations personnelles qu'ils contiennent. Lorsque vous utilisez la fonctionnalité de monitoring de l'IA, vous êtes responsable d'obtenir le consentement de l'utilisateur de votre modèle pour que son interaction puisse être enregistrée par un tiers (New Relic) dans le but de fournir la fonctionnalité de monitoring de l'IA.
Lorsqu'il est défini sur false, désactive l'instrumentation pour les données LLM diffusées en continu. Défini sur true, capture les données diffusées pour l'événement LLM.
Si défini sur false, agent omet le contenu d'entrée et de sortie (comme les chaînes de texte de l'invite et des réponses) capturées dans l'événement LLM. Il s'agit d'un paramètre de sécurité facultatif si vous ne souhaitez pas enregistrer les données sensibles envoyées et reçues par vos LLM.
Variables du cloud
Cette section définit les Node.js agent variables pour créer une relation entre les cloud fournisseurs et APM l'application .
L'ID de compte AWS pour le compte AWS associé à cette application.
Logging d'audit
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section audit_log: { du fichier de configuration newrelic.js de votre application.
Lorsqu'elle est activée, l' agent enregistre les frais qu'il envoie au collecteur. Ces données sont incluses dans le fichier log principal même lorsque le niveau de logging est défini sur le niveau le plus bas.
L'agent envoie plusieurs types de données différents au collecteur dans des charges séparées. Par défaut, ils sont tous inclus dans le fichier de log. Cette option permet de limiter le logging à des types de données spécifiques uniquement.
Les valeurs valides incluent :
agent_settings
analytic_event_data
connect
custom_event_data
error_data
error_event_data
metric_data
preconnect
shutdown
span_event_data
sql_trace_data
transaction_sample_data
API configuration
Cette section vous permet de choisir les méthodes API à activer. Chaque option de configuration vous permet d'activer de manière modulaire les méthodes API responsables de l'envoi d'informations personnalisées à New Relic.
Important
Tous ces paramètres sont définis sur false lorsque l’agent est en mode haute sécurité.
Cette section définit les variables des attributs de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la attributes: { section du newrelic.js configuration fichier de votre application.
Prudence
Toutes les règles d'inclusion/exclusion liées à l'en-tête doivent être au format camelCase pour être filtrées.
Préfixe d'attribut à exclure de toutes les destinations. Autorise * comme caractère générique à la fin. Par exemple, dans le fichier de configuration, cela inclurait tous les paramètres sauf somethingSecret:
Le paramètre d'itinéraire est id et a une valeur de abc123. Cela devient l'attribut request.parameters.route.id: abc123 sur la transaction, le segment racine et le Span. Cet exemple possède également un paramètre de requête de id, qui a une valeur de true. Cela deviendrait l'attribut request.parameters.id: true sur la transaction, le segment racine et l'étendue.
Lorsque true, des modèles peuvent être ajoutés à la liste attributes.include .
Variables du collecteur d'erreurs
Vous pouvez gérer la manière dont les erreurs sont traitées dans New Relic. Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section error_collector: { du fichier de configuration newrelic.js de votre application.
Un objet JavaScript décrivant une liste de classes liées au message d'erreur que le collecteur doit ignorer. La configuration suivante ignorerait toutes les erreurs de type Error avec les chaînes de message exactes (sensibles à la casse) de Undefined et Out of time:
error_collector:{
/* ... */
ignore_messages:{"Error":["Undefined","Out of time"]}
}
Ignorerait toutes les erreurs de type Error, avec les chaînes de message exactes (sensibles à la casse) de Undefined et Out of time.
Prudence
Les erreurs enregistrées à l’aide de newrelic.noticeError() ne respectent pas cette valeur de configuration.
Un objet javascript décrivant une liste de classes javascript liées au message d'erreur javascript que le collecteur doit ignorer. La configuration suivante.
error_collector:{
/* ... */
expected_messages:{"Error":["Undefined","Out of time"]}
}
Marquerait toutes les erreurs de type Error, avec les chaînes de message exactes (sensibles à la casse) de Undefined et Out of time.
Prudence
Les erreurs enregistrées à l’aide de newrelic.noticeError() ne respectent pas cette valeur de configuration.
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section transaction_tracer: { du fichier de configuration newrelic.js de votre application.
Important
N'utilisez pas de crochets [suffix] à la fin du nom de votre transaction. New Relic supprime automatiquement les crochets du nom. Utilisez plutôt des parenthèses (suffix) ou d’autres symboles si nécessaire.
Cette option affecte à la fois la requête lente et record_sql pour le suivi de transaction. Il peut avoir ces valeurs : off, obfuscated ou raw.
Si défini sur off, aucune requête lente ne sera capturée et les backtraces et SQL ne seront pas inclus dans la trace de transaction. Si défini sur raw ou obfuscated, l'agent envoie du SQL brut ou obscurci et un échantillon de requête lente au collecteur. L'agent peut également envoyer du SQL lorsque d'autres critères sont remplis, par exemple lorsque slow_sql.enabled est défini.
Les transactions sont nommées en fonction de la demande et top_n fait référence aux « n transactions les plus lentes » regroupées par ces noms. Le module remplace une trace enregistrée par une nouvelle trace uniquement si la nouvelle trace est plus lente que la trace la plus lente précédente de ce nom. La valeur par défaut de ce paramètre est top_n: 20, car la pageTransactionsutilise également par défaut les 20 transactions les plus lentes.
L'agent Node.js capture au moins cinq transactions lentes différentes lors du premier cycle de collecte après le démarrage. Il réinitialisera et capturera également différentes transactions si aucune transaction lente n'a été capturée au cours des cinq derniers cycles de collecte. Cela vous permet de voir plus d'informations sur davantage de chemins de requête de votre application, au risque possible de ne pas vous concentrer sur la requête la plus lente pour ce cycle de collecte.
Conseil
Pour enregistrer la transaction la plus lente au cours de la dernière minute, vous pouvez définir top_n: 0 ou top_n: 1. Cependant, cela entraîne une route très lente qui domine votre trace de transaction.
Définit le temps, en secondes, pendant lequel une trace de transaction doit être considérée comme lente. La valeur par défaut est apdex_f; elle définit le seuil de trace à quatre fois l'Apdex T de votre application. Si un nombre est fourni, il est défini en secondes.
La valeur par défaut apdex_t est de 500 millisecondes. Si votre seuil de transaction est défini sur apdex_f, une transaction « lente » dure 2 secondes.
Préfixe d'attribut à inclure dans la trace de transaction. Autorise * comme caractère générique à la fin.
Variables de règles
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section rules: { du fichier de configuration newrelic.js de votre application.
Une liste de règles délimitées par des virgules permettant de faire correspondre les URL de requête entrantes et de nommer la transaction New Relic associée. Utilise le format :
name:[
{pattern:'STRING_OR_REGEX',name:'NAME'},
{pattern:'STRING_OR_REGEX',name:'NAME'}
]
Les deux paramètres sont obligatoires. Pour les chaînes, vous devez échapper aux caractères de contrôle. Vous n’avez pas besoin d’échapper aux caractères de contrôle dans les expressions régulières. Les attributs supplémentaires sont ignorés.
Les expressions régulières prennent en charge les groupes de capture de style JavaScript et les noms utilisent des chaînes de remplacement de style $1 . Les expressions régulières ne trouvent que le premier résultat correspondant ; les correspondances suivantes sont ignorées. Pour plus d'informations, consultez l'API de dénomination des transactions Node.js.
Pour la variable d'environnement NEW_RELIC_NAMING_RULES, transmettez les règles sous forme de littéraux d'objet JSON délimités par des virgules :
Définissez une liste d’URL de demande que vous souhaitez que l’agent ignore. Spécifiez la liste sous forme de modèles, qui peuvent être des chaînes ou des expressions régulières. La valeur par défaut est une expression régulière pour correspondre requestsd'interrogation longue socket.io
Lorsque cette option est activée, l' agent renomme les transactions qui ne sont pas affectées par une autre logique de dénomination (telle que l' API, les règles ou les règles de normalisation métrique) en NormalizedUri/*. Si vous définissez cette valeur sur false, l'agent définit les noms de transaction sur Uri/path/to/resource.
Variables d'événement de transaction
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section transaction_events: { du fichier de configuration newrelic.js de votre application.
Lorsque cette option est activée, l' agent envoie un événement de transaction à New Relic. Ces données d'événement incluent le moment de la transaction, le nom de la transaction et tout attribut personnalisé. Si cette option est désactivée, l'agent ne collecte pas ces données ni ne les envoie à New Relic.
Définit le nombre maximal d'événements que l' agent collecte par minute. S'il y en a plus que ce nombre, l'agent collecte un échantillon statistique.
Nous ne recommandons pas de configurer au-delà de 10 000. Le serveur limitera les données à 10 000 par minute.
Important
Cette configuration avait un comportement différent dans les versions d'agent inférieures à 6.0.0. Voir max_samples_stored (OBSOLÈTE) pour les versions d'agent 5.x ou inférieures.
Type
Entier
Défaut
20000
Définit le nombre maximal d'événements que l' agent stocke s'il ne parvient pas à communiquer avec le collecteurNew Relic . Les valeurs du cycle de collecte précédent seront fusionnées dans le suivant, cette option limitant le nombre maximum. Assurez-vous que ce nombre est supérieur à max_samples_per_minute; par exemple, définissez-le à deux fois plus. Tenez compte de votre surcharge mémoire avant d’augmenter cette valeur.
Prudence
Cette configuration a un comportement différent à partir de la version 6.0.0 de l'agent et un nouveau maximum recommandé. Voir max_samples_stored pour les versions d'agent 6.x ou supérieures.
Type
Entier
Défaut
10000
Définit le nombre maximal d'événements que l' agent collecte par minute. S'il y en a plus que ce nombre, l'agent collecte un échantillon statistique.
Prudence
Cette configuration a été remplacée par max_samples_stored à partir de la version 6.0.0 de l'agent. Voir max_samples_stored pour l'agent 6.x ou version ultérieure.
Préfixe d'attribut à inclure dans l'événement de transaction. Autorise * comme caractère générique à la fin.
monitoring des variables des navigateurs
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section browser_monitoring: { du fichier de configuration newrelic.js de votre application.
Préfixe d'attribut à inclure dans monitoring des navigateurs. Autorise * comme caractère générique à la fin.
événement personnalisé variable
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section custom_insights_events: { du fichier de configuration newrelic.js de votre application.
Lorsque cette option est activée, l' agent envoie l'événement personnalisé enregistré avec recordCustomEvent() à New Relic. Si cette option est désactivée, l'agent ne collecte pas ces données ni ne les envoie à New Relic.
Définit le nombre maximum d'événements personnalisés que l' agent collecte par minute. Si le nombre d'événements personnalisés dépasse cette limite, l' agent collecte un échantillonnage statistique.
Lors de la configuration de l'agent pour monitoring de l'IA, définissez la valeur maximale sur 100000. Garantit que la quantité maximale d'événements LLM est capturée.
Important
L’augmentation de cette limite peut augmenter l’utilisation de la mémoire.
requête de variables lentes
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section slow_sql: { du fichier de configuration newrelic.js de votre application. Ces options contrôlent le comportement de la requête lente, mais n'affectent pas les nœuds SQL dans la trace de la transaction.
Définit le nombre maximal de requêtes lentes que l' agent collecte par minute. L'agent rejette toute requête supplémentaire une fois la limite atteinte.
Important
L’augmentation de cette limite augmente l’utilisation de la mémoire.
Variables de nom d'hôte personnalisées
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section process_host: { du fichier de configuration newrelic.js de votre application. Ces options contrôlent le comportement concernant le nom d'affichage de l'hôte dans l'UI APM.
Spécifiez un nom d’hôte personnalisé à afficher dans New Relic. Si vous ne définissez pas ce champ, New Relic continuera à utiliser le nom d'hôte par défaut trouvé en appelant os.hostname().
Si vous utilisez les paramètres de nom d’hôte par défaut, New Relic trouve le nom d’hôte via os.hostname().
Si cet appel échoue, New Relic utilise l'IP de l'hôte comme nom.
Si vous ipv_preference: 4 définissez ipv_preference: 6 ou, vous pouvez sélectionner le type d'adresse IP (IPv4 ou IPv6) qui apparaît dans l'UI New Relic.
Cette section définit les variables de l'agent Node.js dans l'ordre dans lequel elles apparaissent généralement dans la section datastore_tracer du fichier de configuration newrelic.js de votre application. Ces options contrôlent le comportement de collecte des datastore instance métriques .
Lorsqu'il est activé, l'agent collecte des datastore instance métriques (telles que l'hôte et le port) pour certains pilotes de base de données. Ceux-ci sont signalés sur la requête lente trace et la trace de transaction.
Lorsqu'il est activé, l' agent collecte le nom de la base de données lors de la requête lente trace et trace de transaction pour certains pilotes de base de données.
Traçage inter-applications (OBSOLÈTE)
Les variables de l'agent Node.js qui contrôlent le traçage inter-applications apparaissent généralement dans la section cross_application_tracer du fichier de configuration newrelic.js de votre application :
Important
Le tracing inter-applicationa été abandonné au profit du tracing distribué et sera supprimé dans une future version agent .
Lorsque défini sur true, permet le suivi des transactions sur plusieurs applications de monitoring New Relic .
Important
Le tracing inter-application (CAT) est obsolète et sera supprimé dans une future sortie majeure. Pour une visibilité interservices, nous vous recommandons d'utiliser le tracing distribué, qui est activé par défaut à partir de la version 8.3.0 agent . Avant l'activation, lisez le guide de transition.
variables de rédaction du message d'erreur
Les Node.js agent variables qui contrôlent la rédaction du message d'erreur apparaissent dans la strip_exception_messages section du newrelic.js configuration fichier de votre application :
Lorsque true, l'agent rédigera les messages des erreurs capturées.
Tracing distribué
Le tracing distribué vous permet de voir le chemin emprunté par une requête lorsqu'elle traverse un système distribué. Lors de la configuration via le fichier de configuration, placez l'option suivante dans la section distributed_tracing . Il est activé par défaut dans l'agent Node.js 8.3.0 et supérieur.
Définissez cette valeur sur true pour exclure l'en-tête New Relic attaché aux requests sortantes et vous fier uniquement aux en-têtes W3C Trace Context pour le tracing distribué. Si c'est false, les deux types d'en-têtes sont utilisés.
Par exemple, pour activer cela dans le fichier de configuration, vous utiliseriez :
Lorsque l'en-tête traceparent a un indicateur échantillonné de 01, cela contrôle la manière de gérer l'échantillonnage des étendues. Les valeurs autorisées sont :
always_on: l'agent échantillonnera les étendues
always_off: l'agent n'échantillonnera PAS les étendues
default: l'agent utilisera l'échantillonnage NR existant (par défaut)
Par exemple, pour activer cela dans le fichier de configuration, vous utiliseriez :
Lorsque l'en-tête traceparent possède un indicateur échantillonné de 00, cela contrôle la manière de gérer l'échantillonnage des étendues. Les valeurs autorisées sont :
always_on: l'agent échantillonnera les étendues
always_off: l'agent n'échantillonnera PAS les étendues
default: l'agent utilisera l'échantillonnage NR existant (par défaut)
Par exemple, pour activer cela dans le fichier de configuration, vous utiliseriez :
distributed_tracing:{
enabled:true,
sampler:{
remote_parent_not_sampled:'always_on'
}
}
gRPC du serveur instrumentation
La section grpc contrôle le comportement de la manière dont le serveur gRPC est instrumenté.
Lorsque cette option est activée, l'agent enverra tous les codes d'état d'erreur gRPC à New Relic, c'est-à-dire les codes d'état différents de zéro. Si cette option est désactivée, l'instrumentation du serveur n'enverra aucun code d'état différent de zéro à New Relic.
Liste délimitée par des virgules de codes d'état gRPC que le collecteur d'erreurs doit ignorer, à la fois sur instrumentation côté client et côté serveur.
Prudence
Les erreurs enregistrées à l’aide de newrelic.noticeError() ne respectent pas cette valeur de configuration.
Événements de span
Les données Span sont signalées pour le tracing distribué. Le tracing distribué doit être activé pour signaler les étendues. Définissez la configuration de l'étendue dans la section span_events . Les options incluent :
Ce paramètre peut être utilisé pour activer ou désactiver la création de rapports d'attributs pour les étendues. Si attributes.enabled au niveau racine est false, aucun attribut ne sera envoyé avec les étendues, quelle que soit la manière dont cela est défini.
Si les attributs sont activés pour les étendues, toutes les clés d'attribut trouvées dans cette liste seront attachées aux étendues. Pour plus d'informations, consultez les règles d'attribut de l'agent.
Toutes les clés d’attribut trouvées dans cette liste ne seront pas envoyées avec des étendues. Pour plus d'informations, consultez les règles d'attribut de l'agent.
Définit le nombre maximal d'événements que l' agent collecte par minute. S'il y en a plus que ce nombre, l'agent collecte un échantillon statistique.
Nous ne recommandons pas de configurer au-delà de 10 000. Le serveur limitera les données à 10 000 par minute.
Lors de la configuration de l'agent pour monitoring de l'IA, définissez la valeur maximale sur 10000. Garantit que la quantité maximale de traces soit capturée.
Pour activer Infinite Tracing, ajoutez les paramètres ci-dessous. Définissez la configuration du Infinite Tracing dans la section infinite_tracing . De plus, le Infinite Tracing doit être activé. Notez que le tracing distribué est activé par défaut pour les Node.js agent APM versions 8.3.0 et supérieures de l' .
La quantité de Infinite Tracing que l'agent conservera en mémoire avant de les supprimer.
Ce paramètre devrait rarement avoir besoin d'être modifié par rapport à la valeur par défaut, car la file d'attente n'est pas utilisée la plupart du temps. La file d'attente est utilisée uniquement lors des reconnexions au point de terminaison Infinite Tracing lorsque l'agent ne peut pas diffuser de données. Il est possible que l'agent abandonne les intervalles de Infinite Tracing pendant ces périodes, dans ce cas, l'augmentation de ce nombre peut aider.
Nombre d'enregistrements log à envoyer par minute à New Relic. Contrôle la consommation globale de mémoire lors de l'utilisation du transfert de log .
Définissez cette valeur sur une valeur inférieure pour réduire la quantité de lignes log envoyées (peut provoquer 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. Les logs qui se produisent en dehors d'une transaction recevront une priorité aléatoire. 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éfinie sur 10 000 et que la 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.
Si après tout le log des transactions échantillonnées est enregistré et qu'elles n'ont pas atteint la limite de max_samples_stored, alors les messages de log des transactions qui n'étaient pas dans notre échantillonnage sont envoyés. S'il en reste, les messages de log en dehors des transactions sont enregistrés.
Une liste insensible à la casse des noms d'étiquettes à exclure lorsque vous activez l'inclusion d'étiquettes dans le log. Cet attribut ne prend pas en charge les caractères génériques ni les expressions régulières.
Active ou non la capture d'attributs supplémentaires sur les étendues de middleware pour tous les frameworks Web Node.js qui aident à piloter les métriques du niveau de code. Les attributs supplémentaires sont : code.filepath, code.function, code.lineno et code.column.
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.
Spécifie le modèle d'expression régulière à utiliser pour obfuscation de l'URL. Si cette option n'est pas définie, aucune obfuscation d'URL ne sera effectuée.
Spécifie les indicateurs d'expression régulière à utiliser pour la correspondance des modèles obfuscation d'URL, par exemple g pour la correspondance globale, i pour la correspondance insensible à la casse, etc. Plusieurs indicateurs peuvent être spécifiés sous forme de chaîne, par exemple gi. Si cette option n'est pas définie, aucun indicateur ne sera utilisé.
Spécifie la chaîne de remplacement à utiliser pour obfuscation de l'URL. Peut contenir des références pour capturer des groupes dans le modèle, par exemple $1. Si cette valeur n'est pas définie, tout sera remplacé par une seule chaîne vide.
Agent de sécurité
New Relic sécurité agent interactif de test de sécurité des (IAST) de New Relic Security teste votre application pour détecter toute vulnérabilité exploitable en rejouant la requête HTTP générée avec une charge vulnérable.
Prudence
Exécutez IAST avec une déploiement de non-production uniquement pour éviter d'exposer les vulnérabilités de votre logiciel de production.
Active ou non l'envoi des données de l'agent de sécurité New Relic à New Relic. Lorsque cette option est désactivée et que security.agent.enabled est vrai, l'agent de sécurité sera enregistré mais les données ne seront pas envoyées.
Mode de sécurité fourni par New Relic : IAST. La valeur par défaut est IAST. En raison de la nature invasive de l'analyse IAST, N'ACTIVEZ PAS ce mode dans un environnement de production ou dans un environnement où des données de production sont traitées.
URL de connexion à la sécurité New Relic. Il s’agit du point de terminaison auquel l’agent de sécurité envoie les données. Il doit correspondre à l’environnement que vous avez défini pour l’agent Node.js.
Si c'est vrai, l' agent utilise les noms de dyno Heroku comme nom d'hôte.
Fils de discussion des travailleurs
Dans les versions d'agent antérieures à 11.0.0, l'agent s'exécutait à la fois dans les threads principaux et dans les threads de travail. Dans la version 11.0.0, l' agent a cessé de s'exécuter dans les threads de travail en raison de son incompatibilité avec notre propagation asynchrone du contexte. La possibilité d'exécution dans les threads de travail a été restaurée dans la version 11.3.0, mais vous devez définir worker_threads.enabled sur true. Le comportement de l'exécution dans les threads de travail varie et nous ne le prenons pas officiellement en charge. Certaines choses comme la génération de métriques et le suivi autonome des transactions peuvent fonctionner, mais il s'agit d'une capacité que vous utilisez à vos propres risques.
Si vrai, l'agent se chargera lorsqu'il se trouve dans un thread de travail s'il est spécifié.
Remplacements de variables d'environnement
Cette section définit deux options de configuration disponibles uniquement avec les variables d'environnement. Ces remplacements ne sont pas utilisés dans la plupart des configurations.
Chemin vers le répertoire contenant newrelic.js. Ceci est disponible uniquement en tant que variable d'environnement. Vous ne pouvez pas le définir dans votre fichier de configuration.
Type
Chaîne
Défaut
(aucun)
Used to set a different config file name than the default newrelic.js. This is available only as an environment variable. You cannot set it in your config file.
Type
Chaîne
Défaut
(aucun)
Si cette option est utilisée, elle empêche l'agent de lire les paramètres de configuration de newrelic.js. Les valeurs par défaut et les valeurs des variables d’environnement seront toujours définies.
Ceci est disponible uniquement en tant que variable d'environnement. Vous ne pouvez pas le définir dans votre fichier de configuration.
Type
Booléen
Défaut
false
Guide de référence des types de variables d'environnement
Cette section décrit comment formater correctement les types de données complexes.
Les types d'éventail sont définis comme des chaînes délimitées par des virgules.