Nouvelle fonctionnalité et améliorations
- Ajout de la prise en charge de Java 25 par @deleonenriqueta dans la version 2512
- Ajout de la prise en charge de Logback-1.5.20 par @jtduffy dans la version 2535
- Introduit une option de configuration pour désactiver l'exécution des expressions régulières
calletexecdu parseur SQL par @jtduffy dans 2490 - Ajout de la prise en charge Coroutines Kotlin v1.4+ par @dhilpipere dans la version 2454
- Ajoute la prise en charge des fonctions suspendues Coroutines Kotlin générées en dehors des Coroutines Kotlin par @dhilpipere dans la version 2456.
- Introduit une configuration de préférence pour plusieurs hôtes lors de la détection datastore par @jbedell-newrelic dans la version 2508.
- Ajoute une propriété système pour configurer la fonction d'ignorance des artefacts par @jtduffy dans la version 2509
- Ajoute une option de configuration permettant de nommer les transactions du contrôleur Spring en utilisant le nom de la classe et le nom de la méthode du contrôleur (par @sharvath-newrelic dans la version 2532).
- Implémentation de SamplerConfig, centralisant toutes les configurations
distributed_tracing.samplerdansSamplerConfigpar @jasonjkeller dans 2529 - Mise à jour de l'instrumentation du producteur
kafka-clients-spans-0.11.0.0pour utiliser les API de tracing distribué modernes avec prise en charge W3C Trace Context par @sharvath-newrelic dans la version 2516
Corrections
- Correction de l'analyse des noms de classes d'erreurs par @sharvath-newrelic dans la version 2497
- Corrige un problème potentiel de mémoire causé par des traces d'appels excessivement longues dans le logging des erreurs (par @jtduffy dans la PR 2498).
- Clarifier les messages de logging pour l'attribut non valide sur l'événement personnalisé et le logging de l'événement par @sharvath-newrelic en 2501
Dépréciations
Les modules d'instrumentation suivants sont obsolètes et seront retirés lors de la prochaine mission majeure.
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1spring-3.0.0thrift-0.8solr-4.0.0solr-5.0.0jdbc-inet-merliajdbc-inet-oranxograils-1.3rabbit-amqp-1.7.2rabbit-amqp-2.4.1rabbit-amqp-2.5.0rabbit-amqp-2.7.0glassfish-3hibernate-3.3hibernate-3.5jdbc-jtds
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
- 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 la version 1.7.0 2348\ Log 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.> 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.