Nouvelle fonctionnalité et améliorations
- Prise en charge de MongoDB Reactive Streams 5.2.0 et versions ultérieures par @obenkenobi en 2465
- Support de Jedis 6 par @kanderson250 en 2466
Corrections
- CouchBase : ajout d'une classe skip pour éviter la double instrumentation par @jtduffy dans 2462
- Spring WebClient 5.x : encapsuler uniquement les en-têtes au lieu de la réponse entière par @jtduffy dans 2464
Dépréciations
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1
Mise à jour vers la dernière version
Pour identifier la version de l’agent Java que vous utilisez actuellement, exécutez java -jar newrelic.jar -v. Votre version d'agent Java sera imprimée sur votre console.
Ensuite, pour mettre à jour vers la dernière version de l'agent Java :
- Sauvegardez l’ intégralité du répertoire racine de l’agent Java vers un autre emplacement. Renommez ce répertoire en
NewRelic_Agent#.#.#, où#.#.#est le numéro de version de l'agent. - Téléchargez l'agent..
- Décompressez le nouveau fichier de téléchargement de l'agent, puis copiez
newrelic-api.jaretnewrelic.jardans le répertoire racine de l'agent Java d'origine. - Comparez votre ancien
newrelic.ymlavec lenewrelic.ymlnouvellement téléchargé à partir du zip et mettez à jour le fichier si nécessaire. - Redémarrez votre répartiteur Java.
Si vous rencontrez des problèmes après la mise à jour de l'agent Java, effectuez la restauration à partir du répertoire de l'agent New Relic sauvegardé.
Différences de configuration de l'agent de mise à jour
Nous ajoutons de nouveaux paramètres à newrelic.yml à mesure que nous sortons de nouvelles versions de l'agent. Vous pouvez utiliser diff ou un autre utilitaire de comparaison pour voir ce qui a changé et ajouter les nouveaux paramètres de configuration à votre ancien fichier. Assurez-vous de ne pas écraser les personnalisations que vous avez apportées au fichier, telles que votre clé de licence, le nom de l'application ou les modifications apportées aux paramètres par défaut.
Par exemple, si vous diff les fichiers par défaut newrelic.yml pour les versions 7.10.0 et 7.11.0 de l'agent Java, les résultats imprimés sur la console seront comme suit :
➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml...107a108,119> # Whether the log events should include context from loggers with support for that.> include_context_data:>> # When true, application logs will contain context data.> enabled: false>> # A comma separated list of attribute keys whose values should be sent to New Relic.> #include:>> # A comma separated list of attribute keys whose values should not be sent to New Relic.> #exclude:>125a138>128c141< enabled: false---> enabled: true...Dans cet exemple, ces lignes ont été ajoutées à la valeur par défaut newrelic.yml dans la version 7.11.0 de l'agent Java. Si vous passez à la version 7.11.0 ou supérieure, vous devez ajouter ces nouvelles lignes à votre newrelic.yml d'origine.
Déclaration de soutien :
- New Relic vous recommande de mettre à niveau l'agent régulièrement pour vous assurer de bénéficier des dernières fonctionnalités et avantages en termes de performances. De plus, les anciennes sorties ne seront plus prises en charge lorsqu'elles atteindront leur fin de vie.
Nouvelle fonctionnalité et améliorations
- Mise à jour pour prendre en charge la version 24 de graphql par @jtduffy en 2425
- Ajout de l'instrumentation de laitue 6.5 par @kanderson250 en 2430
- Mise à jour de la version commons-lang à 3.18.0 par @jtduffy en 2421
- Ajoutez le nom de base de données lettuce aux paramètres datastore lorsqu'il est disponible par @kanderson250 dans 2423
- Ajoutez une variable d’environnement pour ignorer l’implémentation de certaines applications. Le nom de la variable d’environnement est
NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS. Sa valeur est une liste séparée par des virgules de classes principales, de fichiers jar exécutables ou d'outils/applications basés sur Java que l'agent ne doit PAS instrument (par exempleNEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS=keytool,myapp.jar,IgnoreThisClass) par @jtduffy en 2433
Corrections
- Corrigez un bug où les messages SQS avec 8 attributs ne sont pas envoyés à AWS. Les messages SQS nécessitent moins de 8 attributs pour transmettre les en-têtes tracedistribués par @obenkenobi en 2422
- Supprimez le bit « abonnement » à la fin du nom du sujet dans le client Azure Service Bus par @jbedell-newrelic en 2440
- Correction de la configuration AutoConfiguredOpenTelemetrySdk par @jasonjkeller dans 2451
Dépréciations
Les modules d'instrumentation suivants sont obsolètes et seront supprimés lors de la prochaine sortie majeure :
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1
Mise à jour vers la dernière version
Pour identifier la version de l’agent Java que vous utilisez actuellement, exécutez java -jar newrelic.jar -v. Votre version d'agent Java sera imprimée sur votre console.
Ensuite, pour mettre à jour vers la dernière version de l'agent Java :
- Sauvegardez l’ intégralité du répertoire racine de l’agent Java vers un autre emplacement. Renommez ce répertoire en
NewRelic_Agent#.#.#, où#.#.#est le numéro de version de l'agent. - Téléchargez l'agent..
- Décompressez le nouveau fichier de téléchargement de l'agent, puis copiez
newrelic-api.jaretnewrelic.jardans le répertoire racine de l'agent Java d'origine. - Comparez votre ancien
newrelic.ymlavec lenewrelic.ymlnouvellement téléchargé à partir du zip et mettez à jour le fichier si nécessaire. - Redémarrez votre répartiteur Java.
Si vous rencontrez des problèmes après la mise à jour de l'agent Java, effectuez la restauration à partir du répertoire de l'agent New Relic sauvegardé.
Différences de configuration de l'agent de mise à jour
Nous ajoutons de nouveaux paramètres à newrelic.yml à mesure que nous sortons de nouvelles versions de l'agent. Vous pouvez utiliser diff ou un autre utilitaire de comparaison pour voir ce qui a changé et ajouter les nouveaux paramètres de configuration à votre ancien fichier. Assurez-vous de ne pas écraser les personnalisations que vous avez apportées au fichier, telles que votre clé de licence, le nom de l'application ou les modifications apportées aux paramètres par défaut.
Par exemple, si vous diff les fichiers par défaut newrelic.yml pour les versions 7.10.0 et 7.11.0 de l'agent Java, les résultats imprimés sur la console seront comme suit :
➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml...107a108,119> # Whether the log events should include context from loggers with support for that.> include_context_data:>> # When true, application logs will contain context data.> enabled: false>> # A comma separated list of attribute keys whose values should be sent to New Relic.> #include:>> # A comma separated list of attribute keys whose values should not be sent to New Relic.> #exclude:>125a138>128c141< enabled: false---> enabled: true...Dans cet exemple, ces lignes ont été ajoutées à la valeur par défaut newrelic.yml dans la version 7.11.0 de l'agent Java. Si vous passez à la version 7.11.0 ou supérieure, vous devez ajouter ces nouvelles lignes à votre newrelic.yml d'origine.
Déclaration de soutien :
- New Relic vous recommande de mettre à niveau l'agent régulièrement pour vous assurer de bénéficier des dernières fonctionnalités et avantages en termes de performances. De plus, les anciennes sorties ne seront plus prises en charge lorsqu'elles atteindront leur fin de vie.
Nouvelle fonctionnalité et améliorations
- Azure ServiceBus 7.15.0 instrumentation par @jbedell-newrelic en 2384
- Liaison des métadonnées pour les services d'application Azure par @jbedell-newrelic en 2399
- Les erreurs de connexion sont désormais enregistrées comme SEVERE par @jtduffy dans 2377
- Enregistrement et obscurcissement des clés invalides ajoutés comme attribut aux logs et événements par @jtduffy en 2388
Corrections
- Déplacer la bibliothèque d'annotations IntelliJ par @meiao en 2383
- Prise en charge de la configuration sampling_target côté serveur par @jtduffy en 2386
- Suppression de l'instrumentation MonoFlatMapMain pour corriger les fuites de mémoire potentielles par @deleonenriqueta dans la version 2400
Dépréciations
Les modules d'instrumentation suivants sont obsolètes et seront supprimés lors de la prochaine sortie majeure :
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1
Mise à jour vers la dernière version
Pour identifier la version de l’agent Java que vous utilisez actuellement, exécutez java -jar newrelic.jar -v. Votre version d'agent Java sera imprimée sur votre console.
Ensuite, pour mettre à jour vers la dernière version de l'agent Java :
- Sauvegardez l’ intégralité du répertoire racine de l’agent Java vers un autre emplacement. Renommez ce répertoire en
NewRelic_Agent#.#.#, où#.#.#est le numéro de version de l'agent. - Téléchargez l'agent..
- Décompressez le nouveau fichier de téléchargement de l'agent, puis copiez
newrelic-api.jaretnewrelic.jardans le répertoire racine de l'agent Java d'origine. - Comparez votre ancien
newrelic.ymlavec lenewrelic.ymlnouvellement téléchargé à partir du zip et mettez à jour le fichier si nécessaire. - Redémarrez votre répartiteur Java.
Si vous rencontrez des problèmes après la mise à jour de l'agent Java, effectuez la restauration à partir du répertoire de l'agent New Relic sauvegardé.
Différences de configuration de l'agent de mise à jour
Nous ajoutons de nouveaux paramètres à newrelic.yml à mesure que nous sortons de nouvelles versions de l'agent. Vous pouvez utiliser diff ou un autre utilitaire de comparaison pour voir ce qui a changé et ajouter les nouveaux paramètres de configuration à votre ancien fichier. Assurez-vous de ne pas écraser les personnalisations que vous avez apportées au fichier, telles que votre clé de licence, le nom de l'application ou les modifications apportées aux paramètres par défaut.
Par exemple, si vous diff les fichiers par défaut newrelic.yml pour les versions 7.10.0 et 7.11.0 de l'agent Java, les résultats imprimés sur la console seront comme suit :
➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml...107a108,119> # Whether the log events should include context from loggers with support for that.> include_context_data:>> # When true, application logs will contain context data.> enabled: false>> # A comma separated list of attribute keys whose values should be sent to New Relic.> #include:>> # A comma separated list of attribute keys whose values should not be sent to New Relic.> #exclude:>125a138>128c141< enabled: false---> enabled: true...Dans cet exemple, ces lignes ont été ajoutées à la valeur par défaut newrelic.yml dans la version 7.11.0 de l'agent Java. Si vous passez à la version 7.11.0 ou supérieure, vous devez ajouter ces nouvelles lignes à votre newrelic.yml d'origine.
Déclaration de soutien :
- New Relic vous recommande de mettre à niveau l'agent régulièrement pour vous assurer de bénéficier des dernières fonctionnalités et avantages en termes de performances. De plus, les anciennes sorties ne seront plus prises en charge lorsqu'elles atteindront leur fin de vie.
Prudence
Problèmes connus: Cette sortie présente un problème connu avec certaines utilisations de Netty Reactor qui peuvent provoquer des fuites de mémoire. Veuillez envisager d'utiliser une autre version.
Nouvelle fonctionnalité et améliorations
- Améliore la visibilité des appels Reactor
Mono.flatMap2308 - Ajoute une nouvelle instrumentation pour Spring-Kafka et le traçage distribué lors de l'utilisation du client Kafka de base (bibliothèque 2312).
- Ajoute la prise en charge de
KafkaConsumerConfigévénements pour Kafka 3.7+ 2358
Corrections
Corrige la configuration
distributed_tracing.sampler2330Corrige une erreur d'accès illégal pouvant survenir lors de l'utilisation de Scala 2.12 et JDK 11. Dans les cas où Scala 2.12 n'est pas détectable par l'agent (nous vérifions le chargeur de classes système à cet effet - notamment, sbt charge les classes Scala dans des chargeurs Scala personnalisés), il existe également un indicateur de fonctionnalité permettant d'activer manuellement le correctif via la propriété système
-Dnewrelic.config.class_transformer.illegal_access_fix=true2334Correction des transactions « Inconnues » de netty : 2274 et 2355
- Ce correctif déplace les modifications d'instrumentation Netty précédentes derrière un indicateur de fonctionnalité, ce qui offre une visibilité supplémentaire dans certains cas impliquant des transactions HTTP2. Pour réactiver cette granularité (au prix possible de voir des transactions « inconnues »), utilisez le paramètre de configuration :
netty:http2:frame_read_listener:start_transaction: true- La version 8.20 comporte une erreur logique dans la configuration de l'agent ; le correctif n'est donc officiel que pour la version 8.21 et les versions ultérieures.
Ajoute une restriction sur le moment où il faut ajouter des en-têtes tracedistribuée pour les messages SQS. Cela dépend de la taille du contenu d'un message en octets et de la taille de l'attribut. Les messages d'une taille supérieure à 251 Ko et/ou comportant 9 attributs ou plus sont exclus du calcul traceen-têtes distribués ajoutés (ligne 2353).
Permet de masquer le fichier JAR
org.cracafin d'éviter les conflits avec les environnements clients. 2344Intégration des modifications apportées dans la PR #1927 pour empêcher
NullPointerExceptionsvers les anciennes versions de l'instrumentationvertx-core2327Empêche la création de segments de transaction excessifs par les appels de méthode
HttpUrlConnection(par exemplegetInputStream) lorsqu'ils ne sont pas associés à un appel externe. Ce comportement peut être contrôlé par les options de configuration suivantes :NEW_RELIC_CLASS_TRANSFORMER_COM_NEWRELIC_INSTRUMENTATION_HTTPURLCONNECTION_VERBOSE=false, sys prop-Dnewrelic.config.class_transformer.com.newrelic.instrumentation.httpurlconnection.verbose=false, ou strophe équivalente dansnewrelic.yml. La valeur par défaut esttrue(c'est-à-dire Les méthodes de gestion des réponses non externesgetInputStreamet autres seront signalées comme précédemment). 2365
Sécurité
- Améliore la sécurité grâce à la traçabilité infinie (2339)
com.newrelic.agent.java:infinite-tracing-protobuf - Remplace
snakeyamlparcom.konloch:safeyamlpour corriger une faille de sécurité 2333
Dépréciations
Les modules d'instrumentation suivants sont obsolètes et seront supprimés lors de la prochaine sortie majeure :
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1
IAST
Mise à jour de la version CSEC vers 1.7.0 2348 Journal des modifications : https://github.com/newrelic/csec-java-agent/releases/tag/1.7.0
Mise à jour vers la dernière version
Pour identifier la version de l’agent Java que vous utilisez actuellement, exécutez java -jar newrelic.jar -v. Votre version d'agent Java sera imprimée sur votre console.
Ensuite, pour mettre à jour vers la dernière version de l'agent Java :
- Sauvegardez l’ intégralité du répertoire racine de l’agent Java vers un autre emplacement. Renommez ce répertoire en
NewRelic_Agent#.#.#, où#.#.#est le numéro de version de l'agent. - Téléchargez l'agent..
- Décompressez le nouveau fichier de téléchargement de l'agent, puis copiez
newrelic-api.jaretnewrelic.jardans le répertoire racine de l'agent Java d'origine. - Comparez votre ancien
newrelic.ymlavec lenewrelic.ymlnouvellement téléchargé à partir du zip et mettez à jour le fichier si nécessaire. - Redémarrez votre répartiteur Java.
Si vous rencontrez des problèmes après la mise à jour de l'agent Java, effectuez la restauration à partir du répertoire de l'agent New Relic sauvegardé.
Différences de configuration de l'agent de mise à jour
Nous ajoutons de nouveaux paramètres à newrelic.yml à mesure que nous sortons de nouvelles versions de l'agent. Vous pouvez utiliser diff ou un autre utilitaire de comparaison pour voir ce qui a changé et ajouter les nouveaux paramètres de configuration à votre ancien fichier. Assurez-vous de ne pas écraser les personnalisations que vous avez apportées au fichier, telles que votre clé de licence, le nom de l'application ou les modifications apportées aux paramètres par défaut.
Par exemple, si vous diff les fichiers par défaut newrelic.yml pour les versions 7.10.0 et 7.11.0 de l'agent Java, les résultats imprimés sur la console seront comme suit :
➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml...107a108,119> # Whether the log events should include context from loggers with support for that.> context_data:>> # When true, application logs will contain context data.> enabled: false>> # A comma separated list of attribute keys whose values should be sent to New Relic.> #include:>> # A comma separated list of attribute keys whose values should not be sent to New Relic.> #exclude:>125a138>128c141< enabled: false---> enabled: true...Dans cet exemple, ces lignes ont été ajoutées à la valeur par défaut newrelic.yml dans la version 7.11.0 de l'agent Java. Si vous passez à la version 7.11.0 ou supérieure, vous devez ajouter ces nouvelles lignes à votre newrelic.yml d'origine.
Déclaration de soutien :
- New Relic vous recommande de mettre à niveau l'agent régulièrement pour vous assurer de bénéficier des dernières fonctionnalités et avantages en termes de performances. De plus, les anciennes sorties ne seront plus prises en charge lorsqu'elles atteindront leur fin de vie.
Nouvelle fonctionnalité et améliorations
Prise en charge du CRaC 2250
Prise en charge de JDK24 2284
Options d'échantillonnage ajoutées lorsqu'un traceparent entrant existe 2279
- Ces options définissent la manière dont l'agent doit gérer l'échantillonnage des étendues, en fonction des décisions d'échantillonnage prises pour leur parent d'étendue par une entité en amont. Les options configuration
remote_parent_sampledetremote_parent_not_sampledspécifient ce qu'il faut faire dans le cas où le parent span a été échantillonné ou non échantillonné, respectivement. Consultez la documentation pour obtenir tous les détails de configuration.
- Ces options définissent la manière dont l'agent doit gérer l'échantillonnage des étendues, en fonction des décisions d'échantillonnage prises pour leur parent d'étendue par une entité en amont. Les options configuration
Prise en charge d'Undertow en tant que module autonome 2269
- Cette instrumentation est désactivée par défaut pour éviter les conflits avec l'instrumentation Wildfly existante. Pour activer cette instrumentation pour les applications serveur Undertow autonomes, utilisez le paramètre de configuration :
class_transformer:com.newrelic.instrumentation.undertow-server-1.1.0:enabled: truePrise en charge du client Couchbase 2203
- Si le module expérimental du client Couchbase est actuellement utilisé, supprimez-le de votre répertoire d'extensions avant de procéder à la mise à niveau vers cette version de l'agent Java.
Corrections
Correction des transactions « inconnues » de Netty 2274Ce correctif déplace les modifications précédentes de l'instrumentation Netty derrière un indicateur de fonctionnalité, offrant une visibilité accrue dans certains cas impliquant des transactions HTTP/2. Pour réactiver cette granularité (au risque d'afficher les transactions « Inconnues »), utilisez le paramètre de configuration.:
netty:http2:frame_read_listener:start_transaction: trueRefactorisation de la récupération d'ID AWS Docker pour utiliser le délai d'expiration de 5 s 2275
Indicateur de fonctionnalité pour appliquer le correctif Kotlin
ArrayIndexOutOfBoundsExceptionà toutes les méthodes 2307- Ce correctif corrige les erreurs qui peuvent être observées lors de l’exécution de l’agent Java dans un environnement où les fonctions de suspension de Kotlin sont utilisées. Pour utiliser ce correctif, définissez la propriété système
-Dnewrelic.config.class_transformer.clear_return_stacks=true
- Ce correctif corrige les erreurs qui peuvent être observées lors de l’exécution de l’agent Java dans un environnement où les fonctions de suspension de Kotlin sont utilisées. Pour utiliser ce correctif, définissez la propriété système
Empêcher le verrouillage du cache pour l'analyse des instructions de base de données longues 2294
Ajouter une configuration pour spécifier si java.sql est chargé par le chargeur de classe de la plateforme 2267
Dépréciations
Les modules d'instrumentation suivants sont obsolètes et seront supprimés lors de la prochaine sortie majeure :
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1
Prudence
Problèmes connus: Cette version présente un problème connu avec Netty où des transactions « inconnues » persistent. Veuillez effectuer la mise à jour vers une version ultérieure.
Mise à jour vers la dernière version
Pour identifier la version de l’agent Java que vous utilisez actuellement, exécutez java -jar newrelic.jar -v. Votre version d'agent Java sera imprimée sur votre console.
Ensuite, pour mettre à jour vers la dernière version de l'agent Java :
- Sauvegardez l’ intégralité du répertoire racine de l’agent Java vers un autre emplacement. Renommez ce répertoire en
NewRelic_Agent#.#.#, où#.#.#est le numéro de version de l'agent. - Téléchargez l'agent..
- Décompressez le nouveau fichier de téléchargement de l'agent, puis copiez
newrelic-api.jaretnewrelic.jardans le répertoire racine de l'agent Java d'origine. - Comparez votre ancien
newrelic.ymlavec lenewrelic.ymlnouvellement téléchargé à partir du zip et mettez à jour le fichier si nécessaire. - Redémarrez votre répartiteur Java.
Si vous rencontrez des problèmes après la mise à jour de l'agent Java, effectuez la restauration à partir du répertoire de l'agent New Relic sauvegardé.
Différences de configuration de l'agent de mise à jour
Nous ajoutons de nouveaux paramètres à newrelic.yml à mesure que nous sortons de nouvelles versions de l'agent. Vous pouvez utiliser diff ou un autre utilitaire de comparaison pour voir ce qui a changé et ajouter les nouveaux paramètres de configuration à votre ancien fichier. Assurez-vous de ne pas écraser les personnalisations que vous avez apportées au fichier, telles que votre clé de licence, le nom de l'application ou les modifications apportées aux paramètres par défaut.
Par exemple, si vous diff les fichiers par défaut newrelic.yml pour les versions 7.10.0 et 7.11.0 de l'agent Java, les résultats imprimés sur la console seront comme suit :
➜ diff newrelic_7.10.0.yml newrelic_7.11.0.yml...107a108,119> # Whether the log events should include context from loggers with support for that.> context_data:>> # When true, application logs will contain context data.> enabled: false>> # A comma separated list of attribute keys whose values should be sent to New Relic.> #include:>> # A comma separated list of attribute keys whose values should not be sent to New Relic.> #exclude:>125a138>128c141< enabled: false---> enabled: true...Dans cet exemple, ces lignes ont été ajoutées à la valeur par défaut newrelic.yml dans la version 7.11.0 de l'agent Java. Si vous passez à la version 7.11.0 ou supérieure, vous devez ajouter ces nouvelles lignes à votre newrelic.yml d'origine.
Déclaration de soutien :
- New Relic vous recommande de mettre à niveau l'agent régulièrement pour vous assurer de bénéficier des dernières fonctionnalités et avantages en termes de performances. De plus, les anciennes sorties ne seront plus prises en charge lorsqu'elles atteindront leur fin de vie.