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.
Les attributs par défaut et personnalisés sont visibles dans trace de transaction, traces distribuées et analyse des erreurs ; APM événement et navigateur événement dans le dashboard. Vous pouvez personnaliser exactement quel attribut sera envoyé à chacune de ces destinations.
Ce document décrit les attributs d'agent Java, détaille comment activer ou désactiver l'attribut et décrit les règles que l'suit agent pour déterminer quel attribut inclure ou exclure pour une destination.
Conseil
Ces paramètres d'attribut s'appliquent à la version 3.7.0 ou supérieure de l'agent Java. Si vous utilisez une ancienne version de l'agent, consultez legacy Mettre à jour des configuration attributs .
Attribut spécifique à Java
En plus de l'attribut APM par défaut, l'agent Java collecte les attributs à partir de ces sources :
Le code d'état de réponse pour une requête Web. La clé de cet attribut est http.statusCode. Remarque : les versions d’agent inférieures à 8.0.0 utilisaient l’attribut httpResponseCode.
Le paramètre par défaut pour chaque destination est :
trace de transaction : Activé
Analyse des erreurs : activée
Événement APM : Activé
navigateur événement: Disabled
Le message d'état de réponse s'il est présent pour une demande Web. La clé de cet attribut est http.statusText. Remarque : les versions d’agent inférieures à 8.0.0 utilisaient l’attribut httpResponseMessage.
Le paramètre par défaut pour chaque destination est :
trace de transaction : Activé
Analyse des erreurs : activée
Événement APM : Activé
navigateur événement: Disabled
Le nom du fil. La clé de cet attribut est jvm.thread_name.
Le paramètre par défaut pour chaque destination est :
trace de transaction : Activé
Analyse des erreurs : activée
Événement APM : Désactivé
navigateur événement: Unavailable
Le nom d'un thread verrouillé. La clé de cet attribut est jvm.lock_thread_name.
Le paramètre par défaut pour chaque destination est :
trace de transaction : indisponible
Analyse des erreurs : activée
Événement APM : Indisponible
navigateur événement: Unavailable
Attributs ajoutés par un appel de NewRelic.addCustomParameter(...) à l'API de l'agent Java. Le nom de clé de cet attribut dépend de ce que vous spécifiez lorsque vous appelez la méthode.
Le paramètre par défaut pour chaque destination est :
trace de transaction : Activé
Analyse des erreurs : activée
Événement APM : Désactivé
navigateur événement: Disabled
Important
Avant de créer des attributs personnalisés, consultez la liste des termes réservés utilisés par NRQL de New Relic.Sinon, vous pourriez obtenir des résultats inattendus.
Avant de créer des attributs personnalisés, consultez la liste des termes réservés utilisés par NRQL de New Relic.Sinon, vous pourriez obtenir des résultats inattendus.
Attributs ajoutés à un appel NoticeError() sur l'API de l'agent Java. Le nom de clé de cet attribut dépend de ce que vous spécifiez lorsque vous appelez la méthode.
Le paramètre par défaut pour chaque destination est :
trace de transaction : indisponible
Analyse des erreurs : activée
Événement APM : Indisponible
navigateur événement: Unavailable
L'agent Java peut capturer les en-têtes de réponse et de demande suivants en tant qu'attribut :
En-têtes de requête HTTP capturés :
request.headers.referer
request.headers.accept
request.headers.contentLength
request.headers.host
request.headers.userAgent
En-tête de réponse capturé : response.headers.contentType
L'agent ne capture pas les autres en-têtes de requête.
L'attribut système ne s'applique pas aux valeurs d'en-tête autres que celles répertoriées ci-dessus. Si vous souhaitez capturer des en-têtes de demande supplémentaires non répertoriés ici, vous devez utiliser l'option de configuration custom_request_headers pour spécifier les en-têtes que l'agent doit capturer. Alternativement, vous pouvez enregistrer directement les en-têtes vous-même à l'aide de la méthode addCustomParameter() de l'API de l'agent Java.
Le paramètre par défaut pour chaque destination est :
trace de transaction : Activé
Analyse des erreurs : activée
Événement APM : Activé
navigateur événement: Disabled
L'agent Java capture les méthodes de requête GET, POST et PUT par défaut dans le cadre de l'attribut request.method .
Les paramètres de demande de la transaction ne sont pas capturés par défaut. Utilisez addCustomParameter()l'API de l'agent Java pour capturer les paramètres de requête.
La clé de ces attributs est request.parameters.*. Si la capture d’informations sensibles est une préoccupation, vous pouvez utiliser ces options :
Évitez d’utiliser des caractères génériques dans attributes.include. Au lieu de cela, spécifiez explicitement chaque champ à capturer.
Si vous souhaitez utiliser un caractère générique dans attributes.include, excluez explicitement les champs sensibles à l'aide de attributes.exclude.
Collecter l'attribut utilisateur
Avec l'agent Java d'APM, vous pouvez collecter automatiquement les informations utilisateur en modifiant votre fichier de configuration. Vous pouvez ensuite exécuter une requête NRQL sur les informations de l'utilisateur sans avoir à créer manuellement un attribut personnalisé. Cette fonctionnalité est disponible avec l'agent Java 3.10.0 de New Relic ou supérieur.
# This instrumentation reports the name of the user principal returned from
# HttpServletRequest.getUserPrincipal() when servlets and filters are invoked.
com.newrelic.instrumentation.servlet-user:
enabled:true
Redémarrez votre serveur Web.
Si vous utilisez la version 8.1.0 sortie de l'agent Java, ou supérieur, vous pouvez interroger l'attribut enduser.id soit en activant com.newrelic.instrumentation.servlet-user, soit en utilisant l'API publique et en attendant quelques minutes. Par exemple, vous pouvez utiliser la requête NRQL suivante pour obtenir un décompte unique de tous les utilisateurs :
SELECT uniqueCount(enduser.id)FROMTransaction SINCE 1day ago
Configurer l'attribut : activer, inclure et exclure
Vous pouvez configurer les types d'attributs, ou les attributs spécifiques, que l'agent Java signale à New Relic. Cela est souvent fait pour des raisons de sécurité, lorsqu'il y a certains attributs sensibles que vous ne souhaitez pas signaler à New Relic. Pour savoir quels paramètres remplacent d’autres paramètres, consultez les règles configuration des attributs.
L'agent Java suit ces règles pour déterminer quel attribut inclure ou exclure pour une destination :
Si vous définissez la propriété principale attributes.enabled sur false, l'agent ne signale aucun attribut.
configuration de l'agent :
attributes.enabled: false
attributes.include: request.parameters.*
error_collector.attributes.enabled: true
Touches de saisie :
foo
bar
request.parameters.foo
request.parameters.bar
Sortie de l'agent :
trace de transaction : Aucun attribut
Analyse des erreurs : aucun attribut
Événement APM : Aucun attribut
navigateur événement: No attribut
Lorsque vous définissez l'option activée sur false pour une destination, l'agent ignore vos paramètres d'inclusion/exclusion et ne signale aucun attribut pour cette destination.
configuration de l'agent :
transaction_tracer.attributes.enabled: false
attributes.include: one, two*
transaction_tracer.attributes.include: three, four
Touches de saisie :
one
two
three
four
Sortie de l'agent :
trace de transaction : Aucun attribut
Analyse des erreurs : one, two
Événement APM : one, two
navigateur événement: No attribut
Les propriétés .exclude remplacent les propriétés .include .
configuration de l'agent :
attributes.enabled: true
attributes.include: foo, myCustomAtt
attributes.exclude: password, myCustomAtt
Touches de saisie :
foo
myCustomAtt
password
Sortie de l'agent :
trace de transaction: foo
Analyse des erreurs : foo
Événement APM : foo
événement du navigateur : foo
Si plusieurs attributs d'inclusion ou d'exclusion affectent la même clé, le paramètre le plus spécifique aura la priorité.
configuration de l'agent :
attributes.enabled: true
attributes.include: foo, myCustomAtt
attributes.exclude: password, myCustomAtt
browser_monitoring.attributes.enabled: true
Touches de saisie :
food
food.bread
food.fruit.banana
food.fruit.apple
Sortie de l'agent :
trace de transaction: food.fruit.apple
Analyse des erreurs : food.fruit.banana, food.fruit.apple