• /
  • EnglishEspañolFrançais日本語한국어Português
  • EntrarComeçar agora

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

Novos recursos e melhorias

  • Suporte ao MongoDB Reactive Streams 5.2.0 e superior por @obenkenobi em 2465
  • Suporte para Jedis 6 por @kanderson250 em 2466

Correções

  • CouchBase: Adicionar classe skip para evitar instrumentação dupla por @jtduffy em 2462
  • Spring WebClient 5.x: Encapsule apenas cabeçalhos em vez de toda a resposta por @jtduffy em 2464

Depreciações

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

Atualizar para a versão mais recente

Para identificar qual versão do agente Java você está usando atualmente, execute java -jar newrelic.jar -v. A versão do seu agente Java será impressa em seu console.

Em seguida, para atualizar para a versão mais recente do agente Java:

  1. Faça backup de todo o diretório raiz do agente Java em outro local. Renomeie esse diretório para NewRelic_Agent#.#.#, onde #.#.# é o número da versão do agente.
  2. Baixe o agente..
  3. Descompacte o novo arquivo de download do agente e copie newrelic-api.jar e newrelic.jar no diretório raiz original do agente Java.
  4. Compare seu newrelic.yml antigo com o newrelic.yml recém-baixado do zip e atualize o arquivo, se necessário.
  5. Reinicie seu despachante Java.

Se você tiver problemas após a atualização do agente Java, restaure a partir do diretório do agente New Relic do qual foi feito backup.

Atualizar diferenças de configuração do agente

Adicionamos novas configurações a newrelic.yml à medida que lançamos novas versões do agente. Você pode usar diff ou outro utilitário de comparação para ver o que mudou e adicionar as novas configurações ao seu arquivo antigo. Certifique-se de não substituir nenhuma personalização feita no arquivo, como chave de licença, nome do aplicativo ou alterações nas configurações padrão.

Por exemplo, se você diff os arquivos newrelic.yml padrão para as versões 7.10.0 e 7.11.0 do agente Java, os resultados impressos no console serão 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
...

Neste exemplo, essas linhas foram adicionadas ao newrelic.yml padrão no agente Java versão 7.11.0. Se você estiver migrando para 7.11.0 ou superior, adicione essas novas linhas ao seu newrelic.yml original.

Declaração de apoio:

  • New Relic recomenda que você atualize o agente regularmente para garantir que esteja obtendo os benefícios mais recentes de recursos e desempenho. Além disso, versões mais antigas não terão mais suporte quando chegarem ao fim de sua vida útil.

August 13
Java agent v8.23.0

Novos recursos e melhorias

  • Atualização para suporte à versão 24 do GraphQL por @jtduffy em 2425
  • Adicione alface 6.5 instrumentação por @kanderson250 em 2430
  • Aumente a versão commons-lang para 3.18.0 por @jtduffy em 2421
  • Adicionar lettuce dbName aos parâmetros do armazenamento de dados, quando disponível, por @kanderson250 em 2423
  • Adicione uma variável de ambiente para pular a implementação de certos aplicativos. O nome da variável de ambiente é NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS. O valor disso é uma lista separada por vírgulas de classes principais, arquivos jar executáveis ou ferramentas/aplicativos baseados em Java que o agente NÃO deve instrumentar (por exemplo NEW_RELIC_STARTUP_JAVA_ARTIFACT_SKIPS=keytool,myapp.jar,IgnoreThisClass) por @jtduffy em 2433

Correções

  • Corrigir um bug em que mensagens SQS com 8 atributos não são enviadas para a AWS. As mensagens SQS precisam de menos de 8 atributos para passar cabeçalhos distributed trace por @obenkenobi em 2422
  • Corte a parte "assinatura" do final do nome do tópico no cliente do Azure Service Bus por @jbedell-newrelic em 2440
  • Corrigir configuração AutoConfiguredOpenTelemetrySdk por @jasonjkeller em 2451

Depreciações

Os seguintes módulos de instrumentação estão obsoletos e serão removidos na próxima versão principal:

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

Atualizar para a versão mais recente

Para identificar qual versão do agente Java você está usando atualmente, execute java -jar newrelic.jar -v. A versão do seu agente Java será impressa em seu console.

Em seguida, para atualizar para a versão mais recente do agente Java:

  1. Faça backup de todo o diretório raiz do agente Java em outro local. Renomeie esse diretório para NewRelic_Agent#.#.#, onde #.#.# é o número da versão do agente.
  2. Baixe o agente..
  3. Descompacte o novo arquivo de download do agente e copie newrelic-api.jar e newrelic.jar no diretório raiz original do agente Java.
  4. Compare seu newrelic.yml antigo com o newrelic.yml recém-baixado do zip e atualize o arquivo, se necessário.
  5. Reinicie seu despachante Java.

Se você tiver problemas após a atualização do agente Java, restaure a partir do diretório do agente New Relic do qual foi feito backup.

Atualizar diferenças de configuração do agente

Adicionamos novas configurações a newrelic.yml à medida que lançamos novas versões do agente. Você pode usar diff ou outro utilitário de comparação para ver o que mudou e adicionar as novas configurações ao seu arquivo antigo. Certifique-se de não substituir nenhuma personalização feita no arquivo, como chave de licença, nome do aplicativo ou alterações nas configurações padrão.

Por exemplo, se você diff os arquivos newrelic.yml padrão para as versões 7.10.0 e 7.11.0 do agente Java, os resultados impressos no console serão 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
...

Neste exemplo, essas linhas foram adicionadas ao newrelic.yml padrão no agente Java versão 7.11.0. Se você estiver migrando para 7.11.0 ou superior, adicione essas novas linhas ao seu newrelic.yml original.

Declaração de apoio:

  • New Relic recomenda que você atualize o agente regularmente para garantir que esteja obtendo os benefícios mais recentes de recursos e desempenho. Além disso, versões mais antigas não terão mais suporte quando chegarem ao fim de sua vida útil.

July 9
Java agent v8.22.0

Novos recursos e melhorias

  • Barramento de Serviço do Azure 7.15.0 instrumentação por @jbedell-newrelic em 2384
  • Vinculando metadados para serviços de aplicativo do Azure por @jbedell-newrelic em 2399
  • Erros de conexão agora registrados como SEVERE por @jtduffy em 2377
  • Registrar e ofuscar chaves inválidas adicionadas como atributo aos logs e eventos por @jtduffy em 2388

Correções

  • Realocar a biblioteca de anotações do IntelliJ por @meiao em 2383
  • Suporte à configuração sampling_target do lado do servidor por @jtduffy em 2386
  • Remover a instrumentação MonoFlatMapMain para corrigir possíveis vazamentos de memória por @deleonenriqueta em 2400

Depreciações

Os seguintes módulos de instrumentação estão obsoletos e serão removidos na próxima versão principal:

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

Atualizar para a versão mais recente

Para identificar qual versão do agente Java você está usando atualmente, execute java -jar newrelic.jar -v. A versão do seu agente Java será impressa em seu console.

Em seguida, para atualizar para a versão mais recente do agente Java:

  1. Faça backup de todo o diretório raiz do agente Java em outro local. Renomeie esse diretório para NewRelic_Agent#.#.#, onde #.#.# é o número da versão do agente.
  2. Baixe o agente..
  3. Descompacte o novo arquivo de download do agente e copie newrelic-api.jar e newrelic.jar no diretório raiz original do agente Java.
  4. Compare seu newrelic.yml antigo com o newrelic.yml recém-baixado do zip e atualize o arquivo, se necessário.
  5. Reinicie seu despachante Java.

Se você tiver problemas após a atualização do agente Java, restaure a partir do diretório do agente New Relic do qual foi feito backup.

Atualizar diferenças de configuração do agente

Adicionamos novas configurações a newrelic.yml à medida que lançamos novas versões do agente. Você pode usar diff ou outro utilitário de comparação para ver o que mudou e adicionar as novas configurações ao seu arquivo antigo. Certifique-se de não substituir nenhuma personalização feita no arquivo, como chave de licença, nome do aplicativo ou alterações nas configurações padrão.

Por exemplo, se você diff os arquivos newrelic.yml padrão para as versões 7.10.0 e 7.11.0 do agente Java, os resultados impressos no console serão 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
...

Neste exemplo, essas linhas foram adicionadas ao newrelic.yml padrão no agente Java versão 7.11.0. Se você estiver migrando para 7.11.0 ou superior, adicione essas novas linhas ao seu newrelic.yml original.

Declaração de apoio:

  • New Relic recomenda que você atualize o agente regularmente para garantir que esteja obtendo os benefícios mais recentes de recursos e desempenho. Além disso, versões mais antigas não terão mais suporte quando chegarem ao fim de sua vida útil.

May 29
Java agent v8.21.0

Cuidado

Problemas conhecidos: Esta versão apresenta um problema conhecido com certos usos do Netty Reactor que pode causar vazamentos de memória. Por favor, considere usar outra versão.

Novos recursos e melhorias

  • Aumenta a visibilidade das chamadas do Reator Mono.flatMap 2308
  • Adiciona nova instrumentação para Spring-Kafka e distributed tracing ao usar a biblioteca principal do cliente Kafka 2312
  • Adiciona suporte ao evento KafkaConsumerConfig para Kafka 3.7+ 2358

Correções

  • Corrige a configuração distributed_tracing.sampler 2330

  • Corrige um erro de acesso ilegal que pode ocorrer ao usar Scala 2.12 e JDK 11. Nos casos em que o Scala 2.12 não é detectável pelo agente (verificamos o classloader do sistema para isso - notavelmente, o sbt carregará classes Scala em loaders Scala personalizados), também existe um sinalizador de recurso para habilitar manualmente a correção por meio da propriedade do sistema -Dnewrelic.config.class_transformer.illegal_access_fix=true 2334.

  • Corrigir transações 'Desconhecidas' no Netty 2274 2355

    • Esta correção move alterações anteriores da instrumentação do netty para trás de um sinalizador de recurso, o que fornece visibilidade adicional em alguns casos envolvendo transações HTTP2. Para reativar essa granularidade (ao possível custo de ver transações "Desconhecidas"), use a configuração:
    netty:
    http2:
    frame_read_listener:
    start_transaction: true
    • A versão 8.20 apresenta um erro lógico na configuração do agente, portanto a correção é oficial apenas na versão 8.21 e superiores.
  • Adiciona uma restrição sobre quando adicionar cabeçalhos distributed trace para mensagens SQS. Isso se baseia no tamanho do conteúdo de uma mensagem em bytes e no tamanho do atributo. Mensagens com tamanho superior a 251 KB e/ou com 9 ou mais atributos são excluídas da adição de cabeçalhos distributed trace . 2353

  • Permite que o arquivo JAR org.crac seja ocultado para evitar conflitos com os ambientes dos clientes. 2344

  • Alterações de backport feitas no PR #1927 para evitar NullPointerExceptions em versões mais antigas da instrumentação vertx-core 2327

  • Impede a criação de segmentos de transação excessivos por chamadas de método HttpUrlConnection (por exemplo getInputStream) quando não estão associados a uma chamada externa. Este comportamento pode ser controlado pelas seguintes opções de configuração: NEW_RELIC_CLASS_TRANSFORMER_COM_NEWRELIC_INSTRUMENTATION_HTTPURLCONNECTION_VERBOSE=false, sys prop -Dnewrelic.config.class_transformer.com.newrelic.instrumentation.httpurlconnection.verbose=false, ou stanza equivalente em newrelic.yml. A configuração padrão é true (ou seja, Os métodos de tratamento de resposta não externos getInputStream e outros serão relatados como antes). 2365

Segurança

  • Atualiza o com.newrelic.agent.java:infinite-tracing-protobuf para maior segurança com rastreamento infinito 2339
  • Substitui snakeyaml por com.konloch:safeyaml para corrigir uma vulnerabilidade de segurança 2333

Depreciações

Os seguintes módulos de instrumentação estão obsoletos e serão removidos na próxima versão principal:

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

IAST

Atualização da versão CSEC para 1.7.0 2348\ Changelog: https://github.com/newrelic/csec-java-agent/releases/tag/1.7.0

Atualizar para a versão mais recente

Para identificar qual versão do agente Java você está usando atualmente, execute java -jar newrelic.jar -v. A versão do seu agente Java será impressa em seu console.

Em seguida, para atualizar para a versão mais recente do agente Java:

  1. Faça backup de todo o diretório raiz do agente Java em outro local. Renomeie esse diretório para NewRelic_Agent#.#.#, onde #.#.# é o número da versão do agente.
  2. Baixe o agente..
  3. Descompacte o novo arquivo de download do agente e copie newrelic-api.jar e newrelic.jar no diretório raiz original do agente Java.
  4. Compare seu newrelic.yml antigo com o newrelic.yml recém-baixado do zip e atualize o arquivo, se necessário.
  5. Reinicie seu despachante Java.

Se você tiver problemas após a atualização do agente Java, restaure a partir do diretório do agente New Relic do qual foi feito backup.

Atualizar diferenças de configuração do agente

Adicionamos novas configurações a newrelic.yml à medida que lançamos novas versões do agente. Você pode usar diff ou outro utilitário de comparação para ver o que mudou e adicionar as novas configurações ao seu arquivo antigo. Certifique-se de não substituir nenhuma personalização feita no arquivo, como chave de licença, nome do aplicativo ou alterações nas configurações padrão.

Por exemplo, se você diff os arquivos newrelic.yml padrão para as versões 7.10.0 e 7.11.0 do agente Java, os resultados impressos no console serão 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
...

Neste exemplo, essas linhas foram adicionadas ao newrelic.yml padrão no agente Java versão 7.11.0. Se você estiver migrando para 7.11.0 ou superior, adicione essas novas linhas ao seu newrelic.yml original.

Declaração de apoio:

  • New Relic recomenda que você atualize o agente regularmente para garantir que esteja obtendo os benefícios mais recentes de recursos e desempenho. Além disso, versões mais antigas não terão mais suporte quando chegarem ao fim de sua 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

Cuidado

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.