New features and improvements
- Adds Java 26 support 2734
- Adds Serverless mode for AWS Lambda monitoring with the Java agent 2609 2615 2625 2633 2640 2641 2647 2673 2716 2721 2735 2723 2740 2769 2782 2794 2797 2796 2806
- Adds new
application_logging.forwarding.log_level_denylistconfig 2764 - Implements region aware event/metric ingest URIs 2749 2790 2790
- Adds support for associating logs to corresponding entity when
enable_auto_app_namingistrue2627 - Add
opentelemetry-sdk-extension-autoconfigure-1.59.0instrumentation for OpenTelemetry 1.59.0+ 2786 - Adds support for associating adaptive sampler to corresponding entity when
enable_auto_app_namingistrue2805 - Adds supportability metrics for each entity created when
enable_auto_app_namingistrue2808 - Implements Cloud Metadata Bypass Proxy config 2791
- Adds support for multiple versions of Caffeine in the agent 2807
- Adds support for explain plans that utilize SQL arrays 2815
- Adds generic 'Queue' as a transport type 2820
- Adds support for Reactor Netty Http client calls 2817
Fixes
- Fixes an edge case where ill-formed payloads caused an NPE when accessing the
sampledfield on the NR payload 2762 - Expires Tokens when a Reactive Subscription is canceled 2798
- Adds logic to manually evict any dead threads from the
TheadTrackercache to prevent a memory leak 2811 - Resolves a deadlock between harvest thread and JVM shutdown thread 2539
Update to latest version
To identify which version of the Java agent you're currently using, run java -jar newrelic.jar -v. Your Java agent version will be printed to your console.
Then, to update to the latest Java agent version:
- Back up the entire Java agent root directory to another location. Rename that directory to
NewRelic_Agent#.#.#, where#.#.#is the agent version number. - Download the agent..
- Unzip the new agent download file, then copy
newrelic-api.jarandnewrelic.jarinto the original Java agent root directory. - Compare your old
newrelic.ymlwith the newly downloadednewrelic.ymlfrom the zip, and update the file if needed. - Restart your Java dispatcher.
If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.
Update agent config differences
We add new settings to newrelic.yml as we release new versions of the agent. You can use diff or another diffing utility to see what's changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you've made to the file, such as your license key, app name, or changes to default settings.
For example, if you diff the default newrelic.yml files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:
➜ 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...In this example, these lines were added to the default newrelic.yml in Java agent version 7.11.0. If you're moving to 7.11.0 or higher, you should add these new lines to your original newrelic.yml.
Support statement:
- New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.
Nuevas características y mejoras
- El Agente híbrido de Java: ofrece una experiencia de "lo mejor de ambos mundos" al combinar la visibilidad profunda de New Relic con la compatibilidad con la API de OpenTelemetry. Esta versión incluye soporte integral para las API de Tracing, Metrics y Logs de OpenTelemetry, así como instrumentación de bibliotecas independientes y frameworks nativos. Mejoras clave como Span Links y Events on Spans ya están disponibles, garantizando una interoperabilidad fluida en entornos de modo mixto.
- Soporte de la API de OpenTelemetry del agente híbrido por @jasonjkeller en 2711
- Mejoras en la omisión de corrutinas por @dhilpipre en 2726
- Agregar acción de metadatos del agente - @mvicknr en 2732 2745
Correcciones
- Se corrigió la propagación de trazas rota con encabezados w3c por @jasonjkeller en 2299
- Se corrigió la configuración de preferencia multihost @jtduffy en 2720
- Se solucionó un problema donde suspend ignores no se leía, por @dhilpipre en 2663
Actualizar a la última versión
Para identificar qué versión del agente de Java estás usando actualmente, ejecuta java -jar newrelic.jar -v. Su versión de agente de Java se imprimirá en su consola.
Luego, para actualizar a la última versión del agente de Java:
- Haga una copia de seguridad de todo el directorio raíz del agente de Java en otra ubicación. Cambie el nombre de ese directorio a
NewRelic_Agent#.#.#, donde#.#.#es el número de versión del agente. - Descargar el agente..
- Descomprima el archivo de descarga del nuevo agente y luego copie
newrelic-api.jarynewrelic.jaren el directorio raíz del agente de Java original. - Compare su
newrelic.ymlantiguo con elnewrelic.ymlrecién descargado del zip y actualice el archivo si es necesario. - Reinicie su despachador de Java.
Si tiene problemas después de la actualización del agente de Java, restaure desde el directorio del agente New Relic respaldado.
Actualizar diferencias de configuración del agente
Agregamos nuevas configuraciones a newrelic.yml a medida que lanzamos nuevas versiones del agente. Puede usar diff u otra utilidad de diferenciación para ver qué ha cambiado y agregar la nueva configuración a su archivo anterior. Asegúrese de no sobrescribir ninguna personalización que haya realizado en el archivo, como su clave de licencia, el nombre de la aplicación o los cambios en la configuración predeterminada.
Por ejemplo, si diff los archivos newrelic.yml predeterminados para las versiones 7.10.0 y 7.11.0 del agente de Java , los resultados impresos en la consola serán como:
➜ 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...En este ejemplo, estas líneas se agregaron al valor predeterminado newrelic.yml en el agente de Java versión 7.11.0. Si está migrando a la versión 7.11.0 o superior, debe agregar estas nuevas líneas a su newrelic.yml original.
Declaración de apoyo:
- New Relic recomienda que actualices el agente periódicamente para garantizar que obtengas las últimas características y beneficios de rendimiento. Además, las versiones anteriores ya no recibirán soporte cuando lleguen al final de su vida útil.
Nuevas características y mejoras
- Agregar configuración para eliminar los archivos jar temporales del agente obsoletos al inicio por @jtduffy en 2676
- Añada la opción de "inclusión" para complementar la configuración de exclusión para instrumentar selectivamente aplicaciones @jtduffy en 2638
- Para usar esta función, configure la variable de entorno
NEW_RELIC_STARTUP_JAVA_ARTIFACT_INCLUDESo la propiedad del sistemanewrelic.config.startup_java_artifact_includes. Especifique los artefactos que deben instrumentarse como una lista separada por comas.
- Para usar esta función, configure la variable de entorno
Correcciones
- Resuelve IllegalAccessError moviendo la clase wrapper fuera de S3AsyncClient_Instrumentation por @jtduffy en 2503
- Corregir la versión de instrumentación mal etiquetada en los eventos de log en logback-classic-1.5.20 por @jasonjkeller en 2594
- Mensaje de logging fijo para el valor máximo del atributo por @jeffalder en 2680
- Se corrigieron las prioridades del muestreador de Trace Ratio por @jtduffy en 2583
Eliminaciones
- Elimina los módulos jdbc-inet-* obsoletos por @obenkenobi en 2572
- Elimina el obsoleto java.completable-future-jdk8 instrumentación de @obenkenobi en 2562
- Elimina la instrumentación de ajuste de AWS por @obenkenobi en 2567
- Elimina el módulo jdbc-sybase-6 por @obenkenobi en 2614
- Elimina la instrumentación de play 2.3 por @obenkenobi en 2568
- Elimina la versión obsoleta thrift-0.8 módulo de @obenkenobi en 2569
- Elimina los módulos solr 4.0 y 5.0 obsoletos por @obenkenobi en 2570
- Elimina el módulo obsoleto grails-1.3 por @obenkenobi en 2573
- Elimina el módulo obsoleto hibernate-3.3 por @obenkenobi en 2574
- Elimina la API de inyección de pie de página obsoleta por @sharvath-newrelic en 2620
- Elimina los pointcuts de Struts 1 obsoletos por @obenkenobi en 2561
- Elimina el módulo glassfish-3 obsoleto por @sharvath-newrelic en 2575
- Elimina los módulos obsoletos rabbit-amqp 2.5.0, 2.4.1, 1.7.2 por @obenkenobi en 2571
- Elimina la función de marcador de implementación por @jtduffy en 2589
Actualizar a la última versión
Para identificar qué versión del agente de Java estás usando actualmente, ejecuta java -jar newrelic.jar -v. Su versión de agente de Java se imprimirá en su consola.
Luego, para actualizar a la última versión del agente de Java:
- Haga una copia de seguridad de todo el directorio raíz del agente de Java en otra ubicación. Cambie el nombre de ese directorio a
NewRelic_Agent#.#.#, donde#.#.#es el número de versión del agente. - Descargar el agente..
- Descomprima el archivo de descarga del nuevo agente y luego copie
newrelic-api.jarynewrelic.jaren el directorio raíz del agente de Java original. - Compare su
newrelic.ymlantiguo con elnewrelic.ymlrecién descargado del zip y actualice el archivo si es necesario. - Reinicie su despachador de Java.
Si tiene problemas después de la actualización del agente de Java, restaure desde el directorio del agente New Relic respaldado.
Actualizar diferencias de configuración del agente
Agregamos nuevas configuraciones a newrelic.yml a medida que lanzamos nuevas versiones del agente. Puede usar diff u otra utilidad de diferenciación para ver qué ha cambiado y agregar la nueva configuración a su archivo anterior. Asegúrese de no sobrescribir ninguna personalización que haya realizado en el archivo, como su clave de licencia, el nombre de la aplicación o los cambios en la configuración predeterminada.
Por ejemplo, si diff los archivos newrelic.yml predeterminados para las versiones 7.10.0 y 7.11.0 del agente de Java , los resultados impresos en la consola serán como:
➜ 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...En este ejemplo, estas líneas se agregaron al valor predeterminado newrelic.yml en el agente de Java versión 7.11.0. Si está migrando a la versión 7.11.0 o superior, debe agregar estas nuevas líneas a su newrelic.yml original.
Declaración de apoyo:
- New Relic recomienda que actualices el agente periódicamente para garantizar que obtengas las últimas características y beneficios de rendimiento. Además, las versiones anteriores ya no recibirán soporte cuando lleguen al final de su vida útil.
Correcciones
- Corrige el error de la corrutina Kotlin sobre la implementación de terceros de
CancellableContinuation
Desusos
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
Actualizar a la última versión
Para identificar qué versión del agente de Java estás usando actualmente, ejecuta java -jar newrelic.jar -v. Su versión de agente de Java se imprimirá en su consola.
Luego, para actualizar a la última versión del agente de Java:
- Haga una copia de seguridad de todo el directorio raíz del agente de Java en otra ubicación. Cambie el nombre de ese directorio a
NewRelic_Agent#.#.#, donde#.#.#es el número de versión del agente. - Descargue el agente.
- Descomprima el archivo de descarga del nuevo agente y luego copie
newrelic-api.jarynewrelic.jaren el directorio raíz del agente de Java original. - Compare su
newrelic.ymlantiguo con elnewrelic.ymlrecién descargado del zip y actualice el archivo si es necesario. - Reinicie su despachador de Java.
Si tiene problemas después de la actualización del agente de Java, restaure desde el directorio del agente New Relic respaldado.
Actualizar diferencias de configuración del agente
Agregamos nuevas configuraciones a newrelic.yml a medida que lanzamos nuevas versiones del agente. Puede usar diff u otra utilidad de diferenciación para ver qué ha cambiado y agregar la nueva configuración a su archivo anterior. Asegúrese de no sobrescribir ninguna personalización que haya realizado en el archivo, como su clave de licencia, el nombre de la aplicación o los cambios en la configuración predeterminada.
Por ejemplo, si diff los archivos newrelic.yml predeterminados para las versiones 7.10.0 y 7.11.0 del agente de Java , los resultados impresos en la consola serán como:
➜ 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...En este ejemplo, estas líneas se agregaron al valor predeterminado newrelic.yml en el agente de Java versión 7.11.0. Si está migrando a la versión 7.11.0 o superior, debe agregar estas nuevas líneas a su newrelic.yml original.
Declaración de apoyo:
- New Relic recomienda que actualices el agente periódicamente para garantizar que obtengas las últimas características y beneficios de rendimiento. Además, las versiones anteriores ya no recibirán soporte cuando lleguen al final de su vida útil.
Nuevas características y mejoras
- Se agrega compatibilidad con Java 25 por @deleonenriqueta en 2512
- Se agrega compatibilidad con Logback-1.5.20 por @jtduffy en 2535
- Introduce una opción de configuración para deshabilitar la ejecución de las expresiones regulares
callyexecdel analizador SQL por @jtduffy en 2490 - Agrega compatibilidad con Kotlin Coroutines v1.4+ por @dhilpipre en 2454
- Agrega compatibilidad con las funciones suspendidas de Kotlin Coroutines generadas fuera de Kotlin Coroutines por @dhilpipre en 2456
- Introduce una configuración de preferencia para múltiples hosts durante la detección de almacenamiento de datos por @jbedell-newrelic en 2508
- Agrega una propiedad del sistema para configurar la función de omisión de artefactos por @jtduffy en 2509
- Agrega una opción de configuración que permite nombrar las transacciones del controlador Spring empleando el nombre de la clase del controlador y el nombre del método (por @sharvath-newrelic en 2532).
- Implementa SamplerConfig, centralizando todas las configuraciones
distributed_tracing.samplerenSamplerConfigpor @jasonjkeller en 2529 - Actualizaciones de la instrumentación del productor
kafka-clients-spans-0.11.0.0para usar las APImodernas de rastreo distribuido con soporte W3C Trace Context por @sharvath-newrelic en 2516
Correcciones
- Corrige el análisis de los nombres de clase de error por @sharvath-newrelic en 2497
- Corrige un posible problema de memoria causado por un logging de errores excesivamente grande debido a un seguimiento de stack excesivamente grande (por @jtduffy en 2498).
- Aclaración de los mensajes de logs para atributos no válidos en eventos personalizados y eventos de logs por @sharvath-newrelic en 2501
Desusos
Los siguientes módulos de instrumentación están obsoletos y se eliminarán en la próxima versión principal.
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
Actualizar a la última versión
Para identificar qué versión del agente de Java estás usando actualmente, ejecuta java -jar newrelic.jar -v. Su versión de agente de Java se imprimirá en su consola.
Luego, para actualizar a la última versión del agente de Java:
- Haga una copia de seguridad de todo el directorio raíz del agente de Java en otra ubicación. Cambie el nombre de ese directorio a
NewRelic_Agent#.#.#, donde#.#.#es el número de versión del agente. - Descargar el agente..
- Descomprima el archivo de descarga del nuevo agente y luego copie
newrelic-api.jarynewrelic.jaren el directorio raíz del agente de Java original. - Compare su
newrelic.ymlantiguo con elnewrelic.ymlrecién descargado del zip y actualice el archivo si es necesario. - Reinicie su despachador de Java.
Si tiene problemas después de la actualización del agente de Java, restaure desde el directorio del agente New Relic respaldado.
Actualizar diferencias de configuración del agente
Agregamos nuevas configuraciones a newrelic.yml a medida que lanzamos nuevas versiones del agente. Puede usar diff u otra utilidad de diferenciación para ver qué ha cambiado y agregar la nueva configuración a su archivo anterior. Asegúrese de no sobrescribir ninguna personalización que haya realizado en el archivo, como su clave de licencia, el nombre de la aplicación o los cambios en la configuración predeterminada.
Por ejemplo, si diff los archivos newrelic.yml predeterminados para las versiones 7.10.0 y 7.11.0 del agente de Java , los resultados impresos en la consola serán como:
➜ 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...En este ejemplo, estas líneas se agregaron al valor predeterminado newrelic.yml en el agente de Java versión 7.11.0. Si está migrando a la versión 7.11.0 o superior, debe agregar estas nuevas líneas a su newrelic.yml original.
Declaración de apoyo:
- New Relic recomienda que actualices el agente periódicamente para garantizar que obtengas las últimas características y beneficios de rendimiento. Además, las versiones anteriores ya no recibirán soporte cuando lleguen al final de su vida útil.
New features and improvements
- Support MongoDB Reactive Streams 5.2.0 and up by @obenkenobi in 2465
- Jedis 6 support by @kanderson250 in 2466
Fixes
- CouchBase: Add skip class to prevent double instrumentation by @jtduffy in 2462
- Spring WebClient 5.x: Only wrap headers instead of the entire response by @jtduffy in 2464
Deprecations
aws-wrap-0.7.0java.completable-future-jdk8play-2.3netty-3.4Struts v1
Update to latest version
To identify which version of the Java agent you're currently using, run java -jar newrelic.jar -v. Your Java agent version will be printed to your console.
Then, to update to the latest Java agent version:
- Back up the entire Java agent root directory to another location. Rename that directory to
NewRelic_Agent#.#.#, where#.#.#is the agent version number. - Download the agent..
- Unzip the new agent download file, then copy
newrelic-api.jarandnewrelic.jarinto the original Java agent root directory. - Compare your old
newrelic.ymlwith the newly downloadednewrelic.ymlfrom the zip, and update the file if needed. - Restart your Java dispatcher.
If you experience issues after the Java agent update, restore from the backed-up New Relic agent directory.
Update agent config differences
We add new settings to newrelic.yml as we release new versions of the agent. You can use diff or another diffing utility to see what's changed, and add the new config settings to your old file. Make sure not to overwrite any customizations you've made to the file, such as your license key, app name, or changes to default settings.
For example, if you diff the default newrelic.yml files for Java agent versions 7.10.0 and 7.11.0, the results printed to the console will be like:
➜ 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...In this example, these lines were added to the default newrelic.yml in Java agent version 7.11.0. If you're moving to 7.11.0 or higher, you should add these new lines to your original newrelic.yml.
Support statement:
- New Relic recommends that you upgrade the agent regularly to ensure that you're getting the latest features and performance benefits. Additionally, older releases will no longer be supported when they reach end-of-life.