• /
  • EnglishEspañolFrançais日本語한국어Português
  • Inicia sesiónComenzar ahora

Java agent release notesRSS

November 12
Java agent v8.25.0

Download this agent version

New features and improvements

Fixes

  • Fixes parsing of error class names by @sharvath-newrelic in 2497
  • Fixes a potential memory issue caused by excessively large stack traces in error logging by @jtduffy in 2498
  • Clarify logging messages for invalid attributes on custom events and logging events by @sharvath-newrelic in 2501

Deprecations

  • aws-wrap-0.7.0
  • java.completable-future-jdk8
  • play-2.3
  • netty-3.4
  • Struts v1
  • spring-3.0.0
  • thrift-0.8
  • solr-4.0.0
  • solr-5.0.0
  • jdbc-inet-merlia
  • jdbc-inet-oranxo
  • grails-1.3
  • rabbit-amqp-1.7.2
  • rabbit-amqp-2.4.1
  • rabbit-amqp-2.5.0
  • rabbit-amqp-2.7.0
  • glassfish-3
  • hibernate-3.3
  • hibernate-3.5
  • jdbc-jtds

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:

  1. Back up the entire Java agent root directory to another location. Rename that directory to NewRelic_Agent#.#.#, where #.#.# is the agent version number.
  2. Download the agent..
  3. Unzip the new agent download file, then copy newrelic-api.jar and newrelic.jar into the original Java agent root directory.
  4. Compare your old newrelic.yml with the newly downloaded newrelic.yml from the zip, and update the file if needed.
  5. 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.
> 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
...

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.

September 3
Java agent v8.24.0

Nuevas características y mejoras

  • Soporte para MongoDB Reactive Streams 5.2.0 y versiones posteriores por @obenkenobi en 2465
  • Apoyo a Jedis 6 por @kanderson250 en 2466

Correcciones

  • CouchBase: Agregar clase de omisión para evitar la doble instrumentación por @jtduffy en 2462
  • Spring WebClient 5.x: Solo envuelve los encabezados en lugar de la respuesta completa por @jtduffy en 2464

Desusos

  • aws-wrap-0.7.0
  • java.completable-future-jdk8
  • play-2.3
  • netty-3.4
  • Struts v1

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:

  1. 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.
  2. Descargar el agente..
  3. Descomprima el archivo de descarga del nuevo agente y luego copie newrelic-api.jar y newrelic.jar en el directorio raíz del agente de Java original.
  4. Compare su newrelic.yml antiguo con el newrelic.yml recién descargado del zip y actualice el archivo si es necesario.
  5. 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.
> 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
...

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.

August 13
Java agent v8.23.0

Nuevas características y mejoras

  • Actualización para soportar v24 de graphql por @jtduffy en 2425
  • Agregar instrumentación de lechuga 6.5 por @kanderson250 en 2430
  • @jtduffy actualizó la versión de Commons Lang a la 3.18.0 en 2421
  • Agregar lechuga dbName a los parámetros de almacenamiento de datos donde esté disponible por @kanderson250 en 2423
  • Agregue una variable de entorno para omitir la implementación de ciertas aplicaciones. El nombre de la variable de entorno es NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS. Su valor es una lista separada por comas de clases principales, archivos jar ejecutables o herramientas/aplicaciones basadas en Java que el agente NO debe instrumentar (por ejemplo, NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS=keytool,myapp.jar,IgnoreThisClass) por @jtduffy en 2433

Correcciones

  • Se corrige un error en el cual los mensajes SQS con 8 atributos no se envían a AWS. Los mensajes SQS necesitan menos de 8 atributos para pasar los encabezados de rastreo distribuidos por @obenkenobi en 2422
  • Recorte la parte "subscripción" al final del nombre del tema en el cliente de Azure Service Bus por @jbedell-newrelic en 2440
  • Corregir la configuración de AutoConfiguredOpenTelemetrySdk por @jasonjkeller en 2451

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.0
  • java.completable-future-jdk8
  • play-2.3
  • netty-3.4
  • Struts v1

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:

  1. 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.
  2. Descargar el agente..
  3. Descomprima el archivo de descarga del nuevo agente y luego copie newrelic-api.jar y newrelic.jar en el directorio raíz del agente de Java original.
  4. Compare su newrelic.yml antiguo con el newrelic.yml recién descargado del zip y actualice el archivo si es necesario.
  5. 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.
> 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
...

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.

July 9
Java agent v8.22.0

Nuevas características y mejoras

  • Azure ServiceBus 7.15.0 instrumentación por @jbedell-newrelic en 2384
  • Vinculación de metadatos para servicios de aplicaciones de Azure por @jbedell-newrelic en 2399
  • Los errores de conexión ahora se registran como SEVERE por @jtduffy en 2377
  • Registrar y ofuscar claves no válidas agregadas como atributo a logs y eventos por @jtduffy en 2388

Correcciones

  • Reubicación de la biblioteca de anotaciones IntelliJ por @meiao en 2383
  • Soporte para la configuración de sampling_target del lado del servidor por @jtduffy en 2386
  • Eliminar la instrumentación de MonoFlatMapMain para corregir posibles fugas de memoria por @deleonenriqueta en 2400

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.0
  • java.completable-future-jdk8
  • play-2.3
  • netty-3.4
  • Struts v1

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:

  1. 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.
  2. Descargar el agente..
  3. Descomprima el archivo de descarga del nuevo agente y luego copie newrelic-api.jar y newrelic.jar en el directorio raíz del agente de Java original.
  4. Compare su newrelic.yml antiguo con el newrelic.yml recién descargado del zip y actualice el archivo si es necesario.
  5. 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.
> 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
...

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.

May 29
Java agent v8.21.0

Advertencia

Problemas conocidos: Esta versión tiene un problema conocido con ciertos usos de Netty Reactor que puede provocar fugas de memoria. Considere emplear otra versión.

Nuevas características y mejoras

  • Mejora la visibilidad de las llamadas al Reactor Mono.flatMap 2308
  • Agrega nueva instrumentación para Spring-Kafka y rastreo distribuido al usar la biblioteca cliente principal de Kafka 2312
  • Agrega compatibilidad con eventos KafkaConsumerConfig para Kafka 3.7+ 2358

Correcciones

  • Corrige la configuración distributed_tracing.sampler 2330

  • Corrige un error de acceso ilegal que puede ocurrir al usar Scala 2.12 y JDK 11. En los casos en que Scala 2.12 no sea detectable por el agente (comprobamos el cargador de clases del sistema para ello; cabe destacar que sbt cargará las clases Scala en cargadores Scala personalizados), también existe una bandera de característica para habilitar manualmente la corrección a través de la propiedad del sistema -Dnewrelic.config.class_transformer.illegal_access_fix=true 2334

  • Corregir transacciones 'Desconocidas' de Netty 2274 2355

    • Esta solución mueve los cambios anteriores de instrumentación de netty detrás de una bandera característica, lo que brinda visibilidad adicional en algunos casos que involucran transacciones HTTP2. Para volver a habilitar este detalle (con el posible costo de ver transacciones "Desconocidas"), use la configuración:
    netty:
    http2:
    frame_read_listener:
    start_transaction: true
    • La versión 8.20 tiene un error lógico en la configuración del agente, por lo que la corrección solo es oficial en la versión 8.21 del agente y superiores.
  • Agrega una restricción sobre cuándo agregar encabezados de rastreo distribuido para los mensajes SQS. Esto se basa en el tamaño del contenido de un mensaje en bytes y en el tamaño del atributo. Los mensajes con un tamaño superior a 251 KB o con 9 o más atributos se excluyen de recibir los encabezados de rastreo distribuido añadidos 2353

  • Permite que el archivo JAR org.crac se oculte para evitar conflictos con los entornos de los clientes. 2344

  • Retroporta los cambios realizados en la solicitud de extracción n.° 1927 para evitar NullPointerExceptions en versiones anteriores de la instrumentación vertx-core 2327

  • Evita la creación de segmentos de transacción excesivos mediante llamadas al método HttpUrlConnection (por ejemplo). getInputStream) cuando no están asociados con una llamada externa. Este comportamiento se puede controlar mediante las siguientes opciones de configuración: NEW_RELIC_CLASS_TRANSFORMER_COM_NEWRELIC_INSTRUMENTATION_HTTPURLCONNECTION_VERBOSE=false, sys prop -Dnewrelic.config.class_transformer.com.newrelic.instrumentation.httpurlconnection.verbose=false o stanza equivalente en newrelic.yml. La configuración predeterminada es true (es decir, Los métodos de manejo de respuestas no externos getInputStream y otros se reportarán como antes). 2365

Seguridad

  • Actualiza com.newrelic.agent.java:infinite-tracing-protobuf para mayor seguridad con seguimiento infinito 2339
  • Reemplaza snakeyaml con com.konloch:safeyaml para solucionar una vulnerabilidad de seguridad 2333

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.0
  • java.completable-future-jdk8
  • play-2.3
  • netty-3.4
  • Struts v1

IAST

Actualización de la versión CSEC a la 1.7.0 2348\ log de cambios: https://github.com/newrelic/csec-java-agent/releases/tag/1.7.0

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:

  1. 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.
  2. Descargar el agente..
  3. Descomprima el archivo de descarga del nuevo agente y luego copie newrelic-api.jar y newrelic.jar en el directorio raíz del agente de Java original.
  4. Compare su newrelic.yml antiguo con el newrelic.yml recién descargado del zip y actualice el archivo si es necesario.
  5. 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.
> 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
...

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.

April 15
Java agent v8.20.0

New features and improvements

  • Support for CRaC 2250

  • Support for JDK24 2284

  • Added sampling options when an inbound traceparent exists 2279

    • These options define how the agent should handle sampling of spans, depending on sampling decisions that were made for their parent span by an upstream entity. The configuration options remote_parent_sampled and remote_parent_not_sampled specify what to do in the case the parent span was sampled or not sampled, respectively. See the documentation for full configuration details.
  • Support for Undertow as a stand-alone module 2269

    • This instrumentation is disabled by default to avoid conflicts with existing Wildfly instrumentation. To enable this instrumentation for stand-alone Undertow server apps, use the configuration setting:
    class_transformer:
    com.newrelic.instrumentation.undertow-server-1.1.0:
    enabled: true
  • Support for Couchbase Client 2203

Fixes

  • ~Fix netty 'Unknown' transactions 2274~

    • ~This fix moves previous netty instrumentation changes behind a feature flag, which provides additional visibility in some cases involving HTTP2 transactions. To reenable this granularity (at the possible cost of seeing ‘Unknown’ transactions), use the config setting~:
    netty:
    http2:
    frame_read_listener:
    start_transaction: true
  • Refactor AWS docker id fetch to use 5s timeout 2275

  • Feature flag to apply Kotlin ArrayIndexOutOfBoundsException fix to all methods 2307

    • This fix addresses errors that may be seen when running the Java Agent in an environment where Kotlin suspends functions are used. To use this fix, set the system property -Dnewrelic.config.class_transformer.clear_return_stacks=true
  • Prevent cache lock for long DB statement parsing 2294

  • Add config to specify whether java.sql is loaded by platform classloader 2267

Deprecations

The following instrumentation modules are deprecated and will be removed in the next major release:

  • aws-wrap-0.7.0
  • java.completable-future-jdk8
  • play-2.3
  • netty-3.4
  • Struts v1

Advertencia

Known issues: This release has a known issue with Netty where 'Unknown' transactions persist, please update to a later version.

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:

  1. Back up the entire Java agent root directory to another location. Rename that directory to NewRelic_Agent#.#.#, where #.#.# is the agent version number.
  2. Download the agent..
  3. Unzip the new agent download file, then copy newrelic-api.jar and newrelic.jar into the original Java agent root directory.
  4. Compare your old newrelic.yml with the newly downloaded newrelic.yml from the zip, and update the file if needed.
  5. 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.
> 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
...

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.

Copyright © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.