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

Java agent release notesRSS

April 15
Java agent v8.20.0

Download this agent version

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

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.

Java agent v8.20.0

새로운 기능 및 개선 사항

  • CRaC 2250지원

  • JDK24 2284지원

  • 인바운드 추적 부모가 있는 경우 샘플링 옵션이 추가되었습니다 . 2279

    • 이러한 옵션은 상위 스팬에 대한 샘플링 결정에 따라 에이전트가 스팬 샘플링을 처리하는 방법을 정의합니다.. 설정 옵션 remote_parent_sampledremote_parent_not_sampled 은 상위 스팬이 샘플링되었거나 샘플링되지 않은 경우 수행할 작업을 각각 지정합니다. 자세한 설정 내용은 설명서를 참조하세요.
  • 독립형 모듈 2269로 Undertow 지원

    • 이 측정, 도구는 기존 Wildfly 측정, 로그와의 충돌을 피하기 위해 기본적으로 비활성화됩니다. 독립형 Undertow 서버 앱에 대해 이 측정을 활성화하려면 설정 설정을 사용하세요.
    class_transformer:
    com.newrelic.instrumentation.undertow-server-1.1.0:
    enabled: true
  • Couchbase 클라이언트 2203지원

수정 사항

  • Netty '알 수 없음' 트랜잭션 2274수정

    • 이 수정 사항은 이전의 Netty 측정 및 계측 변경 사항을 기능 플래그 뒤로 옮겨서 HTTP2 트랜잭션과 관련된 일부 경우에 추가 가시성을 제공합니다. 이 세분성을 다시 활성화하려면(알 수 없는 거래가 표시될 수 있는 가능성이 있음) 다음 구성 설정을 사용하세요.
    netty:
    http2:
    frame_read_listener:
    start_transaction: true
  • AWS docker id fetch를 5초 제한 시간으로 리팩토링 2275

  • 모든 메서드에 Kotlin ArrayIndexOutOfBoundsException 수정 사항을 적용하기 위한 기능 플래그 2307

    • 이 수정 사항은 Kotlin 일시 중단 함수가 사용되는 환경에서 자바 에이전트를 실행할 때 발생할 수 있는 오류를 해결합니다. 이 수정 사항을 사용하려면 시스템 속성을 설정하세요. -Dnewrelic.config.class_transformer.clear_return_stacks=true
  • 긴 DB 명령문 구문 분석에 대한 캐시 잠금 방지 2294

  • 플랫폼 클래스 로더 2267에 의해 java.sql이 로드되는지 여부를 지정하는 구성을 추가합니다.

사용 중단

다음 측정, 계측 모듈은 더 이상 사용되지 않으며 다음 주요 릴리스에서 제거될 예정입니다.

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

최신 버전으로 업데이트

현재 사용 중인 Java 에이전트 버전을 식별하려면 java -jar newrelic.jar -v 을 실행합니다. Java 에이전트 버전이 콘솔에 인쇄됩니다.

그런 다음 최신 Java 에이전트 버전으로 업데이트하려면 다음을 수행합니다.

  1. 전체 Java 에이전트 루트 디렉터리 를 다른 위치에 백업합니다. 해당 디렉토리의 이름을 NewRelic_Agent#.#.# 으로 바꿉니다. 여기서 #.#.# 은 에이전트 버전 번호입니다.
  2. 에이전트를 다운로드하세요.
  3. 새 에이전트 다운로드 파일의 압축을 푼 다음 newrelic-api.jarnewrelic.jar 을 원래 Java 에이전트 루트 디렉토리 에 복사합니다.
  4. 이전 newrelic.yml 을 zip에서 새로 다운로드한 newrelic.yml 과 비교 하고 필요한 경우 파일을 업데이트합니다 .
  5. Java 디스패처를 다시 시작하십시오.

Java 에이전트 업데이트 후 문제가 발생하면 백업된 New Relic 에이전트 디렉터리에서 복원하십시오.

에이전트 구성 차이점 업데이트

에이전트의 새 버전을 출시할 때 newrelic.yml 에 새 설정을 추가합니다.diff 또는 다른 diffing 유틸리티를 사용하여 변경된 사항을 확인하고 이전 파일에 새 구성 설정을 추가할 수 있습니다.라이센스 키, 앱 이름 또는 기본 설정 변경 사항과 같이 파일에 대해 수행한 사용자 정의를 덮어쓰지 않도록 하십시오.

예를 들어, יאני 버전 7.10.0 및 7.11.0에 대한 기본 newrelic.yml 파일을 diff 하는 경우 콘솔에 인쇄된 결과는 다음과 같습니다.

➜ 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
...

이 예에서 이러한 줄은 יאם 버전 7.11.0의 기본 newrelic.yml 에 추가되었습니다. 7.11.0 이상으로 이동하는 경우 원래 newrelic.yml 에 이러한 새 줄을 추가해야 합니다.

지지 성명:

  • 뉴렐릭은 에이전트를 정기적으로 업그레이드하여 최신 기능과 성능 이점을 얻을 것을 권장합니다. 또한, 이전 릴리스는 지원 종료 시점 에 더 이상 지원되지 않습니다.

March 11
Java agent v8.19.0

New features and improvements

  • 2238 Support Adding Labels to APM Forwarded Logs by @deleonenriqueta
  • 2246 Update Config File to Include APM Forwarded Log Labels Options by @deleonenriqueta
  • 2243 Add response attributes for http4s server modules by @kanderson250
  • 2230 Default proxy_scheme setting to "http" by @jtduffy
  • 2259 Add support for server-side application logging configs by @obenkenobi

Fixes

  • 2228 invokeSuspend edge case fix by @kanderson250
  • 2258 Rename and reenable aws sqs modules by @kanderson250
  • 2245 Update JFR service to run as a daemon by @kanderson250

IAST

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.

January 30
Java agent v8.18.0

New features and improvements

  • 2172 Add scala3 source detection by @kanderson250
  • 2185 Vertx: decrease amount of tokens created by @meiao
  • 2199 Instrumentation module for Struts2 v6.7.0 by @jtduffy
  • 2203 Kafka 3.9 support by @meiao
  • 2204 Sqs distributed trace by @obenkenobi
  • 2202 Kafka clients node metrics by @meiao

Fixes

  • 2187 Fix edge case in JsonTemplateLayout with certain escaped sequences by @jtduffy
  • 2191 Correct Apdex on transaction event if an error is present by @jtduffy
  • 2192 Don't add null port to hostname attribute on JFR events by @jasonjkeller
  • 2197 Fix memory issue with httpclient-5.0 instrumentation by @jasonjkeller

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.

December 19, 2024
Java agent v8.17.0

New features and improvements

  • Add support for jdbc-mariadb 3.0.0 till latest and r2dbc-mariadb 1.1.2 till latest - credit to @dhilpipre - clone of 2142 by @jtduffy in 2146
  • Auto discover AWS account ID in the DynamoDB instrumentation by @meiao in 2148
  • Auto discover AWS account ID in the Lambda sdk instrumentation by @meiao in 2167
  • Support pekko-http on scala 3 for versions 1.0.0 till latest by @kanderson250 in 2163
  • Allow JFR queue size and harvest interval to be configured via agent config by @jtduffy in 2168 New configs are:
jfr:
# The time interval, in seconds, of how often JFR data is sent to New Relic.
# The default is 10 seconds.
harvest_interval: 10
# The size of the queue used to store JFR events. Increasing this can reduce gaps in JFR reported data
# but can also cause resource issues in the agent or cause data to be dropped if backend pipeline
# limits are exceeded.
# See: https://docs.newrelic.com/docs/data-apis/ingest-apis/event-api/introduction-event-api/#limits
# https://docs.newrelic.com/docs/data-apis/ingest-apis/metric-api/metric-api-limits-restricted-attributes/
# Default is 250000
queue_size: 250000
  • Add AWS Firehose SDK Instrumentation for versions 2.1.0 till latest by @obenkenobi in 2149
  • Implement a new instrumentation module for r2dbc-mysql 1.1.3+ by @jbedell-newrelic in 2169
  • Memory usage reduced for the r2dbc-mssql and m2dbc-mysql modules by @jbedell-newrelic in 2169
  • Log when multiple, different, traceparent headers found on inbound request and only report invalid parent header count supportability metric when that scenario occurs by @jtduffy in 2154
  • Expected NPE in noticeTracer no longer logs full stack trace by @jasonjkeller in 2143

Fixes

  • Resolved a potential token timeout issue with the reactor-3.3.0 module by @jbedell-newrelic in 2169

IAST

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.

November 14, 2024
Java agent v8.16.0

New features and improvements

  • Obfuscate JVM properties 2114
    The Java agent will now obfuscate values passed to JVM properties. For example: -Dprop=12345 will now be sent as -Dprop=obfuscated. The documentation has information on how to disable obfuscation and how to add exceptions.
  • Cloud API 2081
    The Cloud API allows cloud provider account information to be provided to the agent. This will allow the agent to populate the cloud.resource_id attribute in calls to select cloud services.
    The API documentation has information on how to use it programmatically.
    This information can also be provided using a configuration option.
  • Support distributed tracing for Kafka Stream 3.7.x 2095

  • Report if agent was installed via Azure site extension 2094

  • Lazy initialization of GUIDs on DefaultTracers 2088

  • Java HttpClient: Addition of status code to reported externals 2089

  • AWS Lambda: populate cloud.resource_id using data from Cloud API 2115

  • Kinesis Data Streams: populate cloud.resource_id 2112

  • DynamoDB: populate cloud.resource_id 2113

Fixes

  • Use recordResponseTimeMetric instead of recordMetric 2128

  • Use WeakReference HttpUrlConnection instrumentation 2082

  • Fix a bug where Jetty 12 would not properly link distributed traces 2140

  • Update to JFR daemon 1.13.0 2129
    This update changes the HTTP client used, which caused problems with some proxies.

IAST

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.

October 1, 2024
Java agent v8.15.0

New features and improvements

  • Addition of AWS Lambda SDK instrumentation 1998
  • Reporting of Flyway migration events 2021
  • Add support for using an environment variable for config file location 2022
  • Support AWS Kinesis V1 and V2 SDKs 2031
  • Addition of kafka-clients-node-metrics-3.7.0 Instrumentation module 2039
  • Add instrumentation for glassfish-jul-extension logging library 2049
  • Java 23 support 2055
  • Support reporting of ECS Fargate Docker ids 2050
  • Actuator endpoint transaction naming for Spring Boot 3 2077

Fixes

  • Slick 3.5.0 instrumentation bug fix 2025
  • Protect against Http2Headers methods throwing exceptions in Netty instrumentation 2042
  • Fix an issue where the Kinesis instrumentation is generating ERROR logs due to a NullPointerException 2052

IAST

Full Changelog: https://github.com/newrelic/newrelic-java-agent/compare/v8.14.0...v8.15.0

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.

August 21, 2024
Java agent v8.14.0

New features and improvements

  • The Java agent supports disabling AI Monitoring at the account/organization level 1972
  • HikariCP instrumentation now captures additional metrics 1976
  • Adds new instrumentation module for kafka-clients-metrics-3.7.0 2001
  • Adds new instrumentation module for jedis-5.0.0 1969
  • Adds new instrumentation module for vertx-sqlclient-4.4.2 2004
  • The newrelic-scala-api for Scala 3 will now be published to Maven 1995
  • New AWS MQ attributes will be added to spans 1977
  • Clarify Javadoc comments for @Trace API 2009

Fixes

  • Fixes a netty-reactor issue that was causing high memory usage 1978
  • Netty instrumentation will start transactions for HTTP/2 requests 1994

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
  • spring-3.0.0
  • netty-3.4
  • Struts v1

IAST

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.

July 11, 2024
Java agent v8.13.0

New features and improvements

  • Add attributes to AWS SQS spans that allow linking to SQS entities 1954
  • Add support for Graphql 22.0+ 1912
  • Add support for JSP v4 1951
  • Add instrumentation for HikariCP 2.4.0 to replace existing extension module.1964
    • Note: If the New Relic HikariCP incubator module is currently in use, delete it from the new relic jar’s extension folder before upgrading to this version of the Java Agent.
  • Enhance CompletableFuture instrumentation for JDK11+ 1908
  • Enable RUM script injection via JSP v3 Tag library 1943
  • Fetch the docker container ID for ECS Fargate instances 1952

Fixes

  • Fix R2dbc postgresql 0.9.2 instrumentation to prevent memory leaks 1916
  • Update vertx-web instrumentation to start transactions for HTTP/2 requests 1959
  • Update JFR Instance Naming to display correct number of JVMs 1928
  • Close instrumentation gap for akka-http 10.2.0+ 1955
  • Start transactions in the Jetty12 core server 1950
  • Clean up dtTracers and externalTracers after exceptions to prevent memory leaks 1902
  • Add security-related class excludes during normal class transformer creation 1918
  • Add null checks to vertx 4.5.1 instrumentation 1927

IAST

Deprecations

  • The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. 1679

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
  • spring-3.0.0
  • netty-3.4
  • Struts 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:

  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.

May 23, 2024
Java agent v8.12.0

New features and improvements

  • Add support for Java 22 1819
  • Add AI Monitoring support for AWS SDK for Java v2 Bedrock Runtime Client versions 2.20.157 and above 1837
  • Enhance log forwarding to include caused by section 1857
  • Add support for Pekko Http 1850
  • Add local decorating for Log4j 2 users utilizing JsonTemplateLayout 1866
  • Performance improvements on SQL checks 1887

Fixes

  • Resolve various thread hopping issues with Spring Reactor call chains 1883
  • Refactor the daily logfile rolling job to support all platforms 1888
  • Fix Ning memory leak 1903

IAST

Deprecations

  • The browser footer injection APIs have been deprecated and will be removed in a future agent release. The header injection API now adds both the header and footer scripts. 1679

  • 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
    • spring-3.0.0
    • netty-3.4
    • Struts 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:

  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

Copyright © 2025 New Relic Inc.

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