新機能と改善点
- Java 27サポート 3095
- AIモニタリング - AWS Converse APIのサポート 2995 3003
- Quarkusサポート:rest-3.0.0 3009
- Quarkus resteasy 2.14のサポート 3018
- Spring Boot Actuator v4のサポート 3040
- Ktor Http Clients、Http Server、およびUtils(Pipelines)のサポート 2892 2894 2895
- Redisson 3.28.0以降のサポート 3050
- Adobe AEM(Sling)ブラウザスクリプトインジェクションモジュール 2863
- Oracle explain planサポート 3080
機能強化
- (限定的な)ハイブリッド・エージェント・プロキシ・サポートの追加 3013
- ハイブリッドエージェント - ロギング - コンテキスト属性が存在する場合に空のメッセージ本文を許可 3042
- ハイブリッド監査ロギングの追加 3059
- gRPC-Nettyサポートの強化 3063
- ハイブリッドエージェントのOTLPメトリクス再試行ロジックを有効化 3084
- コレクター接続のTTLおよびリカバリ・テストの追加 3081
- weave関連のタスクスレッド数を設定可能に変更 3103
- KafkaメトリクスでCluster IDを報告します 3054
修正
IAST
- CSECエージェントのバージョンをv1.8.0に更新 3065 変更履歴:https://github.com/newrelic/csec-java-agent/releases#release-1.8.0
最新バージョンへのアップデート
現在使用中のJavaエージェントのバージョンを特定するには、java -jar newrelic.jar -vを実行します。Javaエージェントのバージョンがコンソールに出力されます。
次に、最新バージョンのJavaエージェントにアップデートするには、以下の手順に従います。
- すべてのJavaエージェントのルートディレクトリを別の場所にバックアップします。そのディレクトリの名前を
NewRelic_Agent#.#.#に変更します。ここで、#.#.#はエージェントのバージョン番号です。 - エージェントをダウンロードします。
- 新しいエージェントのダウンロードファイルを解凍し、
newrelic-api.jarとnewrelic.jarを元のJavaエージェントのルートディレクトリにコピーします。 - 古い
newrelic.ymlとzipからダウンロードした新しいnewrelic.ymlを比較し、必要に応じてファイルを更新します。 - Javaディスパッチャを再起動します。
Javaエージェントのアップデート後に問題が発生する場合は、バックアップしたNew Relicエージェントディレクトリから復元します。
エージェント設定の差分のアップデート
エージェントの新しいバージョンをリリースする際に、newrelic.ymlに新しい設定を追加します。diffまたは別の差分ユーティリティを使用して変更内容を確認してから、新しい設定を古いファイルに追加できます。ライセンスキー、アプリ名、デフォルト設定の変更など、ファイルに対して行ったカスタマイズを上書きしないようにしてください。
たとえば、 Javaバージョン 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.> 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...この例では、これらの行はJavaエージェント バージョン 7.11.0 のデフォルトのnewrelic.ymlに追加されました。 7.11.0 以降に移行する場合は、これらの新しい行を元のnewrelic.ymlに追加する必要があります。
サポートステートメント:
- New Relic では、最新の機能とパフォーマンス上のメリットを確実に得られるよう、エージェントを定期的にアップグレードすることをお勧めします。さらに、古いリリースはサポート終了になるとサポートされなくなります。
新機能と改善点
- log4j-2.11モジュールからリンクメタデータblob
@NewFieldsを削除しました 2917 lettuce-6.0およびlettuce-6.5モジュールでのクラスタモードのサポートを追加しました 2922- Vert.x用の新しい計装モジュールを追加しましたwebおよびcore 5.x 2920
- レガシーポイントカットを置き換える新しいJava Server Faces計装モジュールを追加しました 2944
- レガシーポイントカットを置き換える新しいPortletモジュールを追加しました 2953
- shadowプラグインを
com.github.johnrengelmanからcom.gradleupに移行しました 2945 HandlerMethodInvoker3PointCutポイントカットのweaveクラス計装の代替を追加しました 2967jdbc-genericモジュールから@NewFieldアノテーションを削除しました 2963- HandlerMethodInvokerPointCutポイントカットを削除しました 2977
- SpringPointCutポイントカットを削除しました 2990
- すべての外部HTTPスパンに新しい
http.request.method属性を追加しました 2985 3010 - (Javaエージェントでの設定に従って)APMラベルでJFRデータを装飾するサポートを追加しました 3007
- [Hybridエージェント]接続応答からの
otlp_resource_attributesでOpenTelemetryのディメンショナルメトリクスを装飾しました 2956
修正
apache-log4j-2.11 moduleのMDCリークの問題を修正しました 2926java.rmi名前空間の例外を削除しました 2932wildfly-27モジュールでJakartaサーブレット例外属性を使用しました 2929- ファイルパイプが書き込まれなかった場合、Serverlessモードでペイロードがコンソールに送信されるようになりました 2975
ForceRestartExceptionのログをINFOに変更しました 2989- シャドウ化されたjspecifyライブラリの
@NullMarkedクラスから問題のあるenum値を削除するために、新しいビルド時のPatcherインスタンスを追加しました 2982 - Netty ReactorのHTTP呼び出しのセグメントインスタンスをクリーンアップしました 3004
- 一部の非同期操作中のトランザクションリンクメタデータを修正しました 3006
最新バージョンへのアップデート
現在使用中のJavaエージェントのバージョンを特定するには、java -jar newrelic.jar -vを実行します。Javaエージェントのバージョンがコンソールに出力されます。
次に、最新バージョンのJavaエージェントにアップデートするには、以下の手順に従います。
- すべてのJavaエージェントのルートディレクトリを別の場所にバックアップします。そのディレクトリの名前を
NewRelic_Agent#.#.#に変更します。ここで、#.#.#はエージェントのバージョン番号です。 - エージェントをダウンロードします。
- 新しいエージェントのダウンロードファイルを解凍し、
newrelic-api.jarとnewrelic.jarを元のJavaエージェントのルートディレクトリにコピーします。 - 古い
newrelic.ymlとzipからダウンロードした新しいnewrelic.ymlを比較し、必要に応じてファイルを更新します。 - Javaディスパッチャを再起動します。
Javaエージェントのアップデート後に問題が発生する場合は、バックアップしたNew Relicエージェントディレクトリから復元します。
エージェント設定の差分のアップデート
エージェントの新しいバージョンをリリースする際に、newrelic.ymlに新しい設定を追加します。diffまたは別の差分ユーティリティを使用して変更内容を確認してから、新しい設定を古いファイルに追加できます。ライセンスキー、アプリ名、デフォルト設定の変更など、ファイルに対して行ったカスタマイズを上書きしないようにしてください。
たとえば、 Javaバージョン 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.> 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...この例では、これらの行はJavaエージェント バージョン 7.11.0 のデフォルトのnewrelic.ymlに追加されました。 7.11.0 以降に移行する場合は、これらの新しい行を元のnewrelic.ymlに追加する必要があります。
サポートステートメント:
- New Relic では、最新の機能とパフォーマンス上のメリットを確実に得られるよう、エージェントを定期的にアップグレードすることをお勧めします。さらに、古いリリースはサポート終了になるとサポートされなくなります。
新機能と改善点
デフォルトのyamlにlog_level_denylist設定を追加 2830
Solr 9 JMXモジュール 2821
LLMレスポンスからトークン数を取得するための新しい一元化されたトークンカウント戦略。2837
JDBCバッチ操作のキャプチャのサポート;具体的にはaddBatch()およびexecuteBatch()メソッド。2840
レガシーポイントカットを置き換えるXML RPC計装モジュール 2841
新しいJFR固有の設定
jfr.use_display_nameを追加します。trueに設定した場合、エージェントはJFRホスト名をprocess_host.display_name設定の値に設定します。従来の動作を維持するため、デフォルトは false です。
jfr.use_display_name が true でも、display_name 設定が空の場合、JfrService はホスト名の古い動作にフォールバックします。
common: &default_settings jfr: use_display_name: truejava.xmlrpc モジュールでの不要なセグメント作成を削除 2853
各モデルの新しいトークンカウント戦略を使用して、aws-bedrock-runtime-2.20モジュールを更新します。2845
新しいライセンスキー難読化アルゴリズム 2864
Micronaut Http Clients バージョン3.5.0+のサポート2834
Kafka Clients 4.0.0以降のサポート 2896
内部依存関係のLog4j Coreを2.17.1から2.25.4にアップグレード 2833
2.0.0~最新までのAWS DAXサポート 2873
バージョン1.0.0以降のSpring AI completionおよびembeddingクライアント用の計装を追加します。これにより、新しい計装モジュールが追加されます:
spring-ai-client-chat-1.0.0spring-ai-model-1.0.0コアトレース - SpanEventsのドロップとドロップされたSpanLinksのリペアレント 2881
ポイントカットの置換
MicronautのBlockingHttpClientをサポート 2860
AIモデル Context Protocol 1.0.0から最新版までのサポートを追加。2880
修正
コルーチン計装を修正。修正には以下が含まれます:
- 実行が別のスレッドにジャンプする可能性がある箇所で見つかったギャップがインストゥルメントされたことで、非同期動作の追跡が改善されました。
- Coroutinesおよびコンティニュエーションの命名の改善。既存の命名は一般的すぎました。新しい命名では、runBlocking、async、withContext、またはリリースのいずれを介して開始されたかに応じて識別します。
- 使用されなくなった一部のユーティリティメソッドを削除しました 2802
Micronautがインストゥルメントされた際に、有効期限が切れていない非同期トークンの数が過剰になる問題を修正しました。2792
Mule 4.9 IllegalAccessErrorの解決 2859
Core Tracingのインストゥルメントされたメトリクスと保持されたメトリクスについて、元々時間メトリクスとして記録されていた記録の誤りを修正しました。2881
最新バージョンへのアップデート
現在使用中のJavaエージェントのバージョンを特定するには、java -jar newrelic.jar -vを実行します。Javaエージェントのバージョンがコンソールに出力されます。
次に、最新バージョンのJavaエージェントにアップデートするには、以下の手順に従います。
- すべてのJavaエージェントのルートディレクトリを別の場所にバックアップします。そのディレクトリの名前を
NewRelic_Agent#.#.#に変更します。ここで、#.#.#はエージェントのバージョン番号です。 - エージェントをダウンロードします。
- 新しいエージェントのダウンロードファイルを解凍し、
newrelic-api.jarとnewrelic.jarを元のJavaエージェントのルートディレクトリにコピーします。 - 古い
newrelic.ymlとzipからダウンロードした新しいnewrelic.ymlを比較し、必要に応じてファイルを更新します。 - Javaディスパッチャを再起動します。
Javaエージェントのアップデート後に問題が発生する場合は、バックアップしたNew Relicエージェントディレクトリから復元します。
エージェント設定の差分のアップデート
エージェントの新しいバージョンをリリースする際に、newrelic.ymlに新しい設定を追加します。diffまたは別の差分ユーティリティを使用して変更内容を確認してから、新しい設定を古いファイルに追加できます。ライセンスキー、アプリ名、デフォルト設定の変更など、ファイルに対して行ったカスタマイズを上書きしないようにしてください。
たとえば、 Javaバージョン 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.> 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...この例では、これらの行はJavaエージェント バージョン 7.11.0 のデフォルトのnewrelic.ymlに追加されました。 7.11.0 以降に移行する場合は、これらの新しい行を元のnewrelic.ymlに追加する必要があります。
サポートステートメント:
- New Relic では、最新の機能とパフォーマンス上のメリットを確実に得られるよう、エージェントを定期的にアップグレードすることをお勧めします。さらに、古いリリースはサポート終了になるとサポートされなくなります。
新機能と改善点
- Java 26サポートを追加 2734
- Javaエージェントを使用したAWS Lambda監視にServerlessモードを追加 2609 2615 2625 2633 2640 2641 2647 2673 2716 2721 2735 2723 2740 2769 2782 2794 2797 2796 2806
- 新しい
application_logging.forwarding.log_level_denylist設定を追加 2764 - リージョン対応のイベント/メトリクス取り込みURIを実装 2749 2790
enable_auto_app_namingがtrueの場合に、ログを対応するエンティティに関連付けるサポートを追加します 2627- OpenTelemetry 1.59.0+用の
opentelemetry-sdk-extension-autoconfigure-1.59.0計装を追加2786 enable_auto_app_namingがtrueの場合に、適応型サンプラーを対応するエンティティに関連付けるサポートを追加しました 2805enable_auto_app_namingがtrueの場合に作成される各エンティティのサポートアビリティメトリクスを追加します 2808- Cloudメタデータバイパスプロキシ設定を実装 2791
- エージェントで複数バージョンのCaffeineのサポートを追加 2807
- SQL配列を利用する実行計画のサポートを追加 2815
- 汎用的な「Queue」をtransportタイプとして追加 2820
- Reactor Netty Httpクライアント呼び出しのサポートを追加 2817
修正
- NRペイロードの
sampledフィールドにアクセスする際に、不正な形式のペイロードによってNPEが発生するエッジケースを修正 2762 - Reactiveサブスクリプションがキャンセルされたときにトークンを失効させる 2798
- メモリリークを防ぐために、
TheadTrackerキャッシュからデッドスレッドを手動で削除するロジックを追加 2811 - ハーベストスレッドとJVMシャットダウンスレッド間のデッドロックを解決 2539
最新バージョンへのアップデート
現在使用中のJavaエージェントのバージョンを特定するには、java -jar newrelic.jar -vを実行します。Javaエージェントのバージョンがコンソールに出力されます。
次に、最新バージョンのJavaエージェントにアップデートするには、以下の手順に従います。
- すべてのJavaエージェントのルートディレクトリを別の場所にバックアップします。そのディレクトリの名前を
NewRelic_Agent#.#.#に変更します。ここで、#.#.#はエージェントのバージョン番号です。 - エージェントをダウンロードします。
- 新しいエージェントのダウンロードファイルを解凍し、
newrelic-api.jarとnewrelic.jarを元のJavaエージェントのルートディレクトリにコピーします。 - 古い
newrelic.ymlとzipからダウンロードした新しいnewrelic.ymlを比較し、必要に応じてファイルを更新します。 - Javaディスパッチャを再起動します。
Javaエージェントのアップデート後に問題が発生する場合は、バックアップしたNew Relicエージェントディレクトリから復元します。
エージェント設定の差分のアップデート
エージェントの新しいバージョンをリリースする際に、newrelic.ymlに新しい設定を追加します。diffまたは別の差分ユーティリティを使用して変更内容を確認してから、新しい設定を古いファイルに追加できます。ライセンスキー、アプリ名、デフォルト設定の変更など、ファイルに対して行ったカスタマイズを上書きしないようにしてください。
たとえば、 Javaバージョン 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.> 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...この例では、これらの行はJavaエージェント バージョン 7.11.0 のデフォルトのnewrelic.ymlに追加されました。 7.11.0 以降に移行する場合は、これらの新しい行を元のnewrelic.ymlに追加する必要があります。
サポートステートメント:
- New Relic では、最新の機能とパフォーマンス上のメリットを確実に得られるよう、エージェントを定期的にアップグレードすることをお勧めします。さらに、古いリリースはサポート終了になるとサポートされなくなります。
新機能と改善点
- Java ハイブリッド エージェント: New Relic の高度な可視性とOpenTelemetry API の互換性を組み合わせることで、「両方の長所を兼ね備えた」エクスペリエンスを提供します。このリリースには、 OpenTelemetry Tracing、メトリクス、ログ API に加え、スタンドアロン ライブラリとネイティブ フレームワーク計装の包括的なサポートが含まれています。 Span リンクや Span 上のイベントなどの主要な機能強化が利用できるようになり、混合モード環境でのシームレスな相互運用性が保証されます。
- ハイブリッドエージェント OpenTelemetry API サポート (@jasonjkeller による2711)
- 2726の @dhilpipre によるコルーチン無視の機能強化
- エージェントメタデータアクションを追加 - @mvicknr in 2732 2745
修正
- 2299で @jasonjkeller が W3C ヘッダーによる壊れたトレース伝播を修正しました
- 2720のマルチホスト設定 @jtduffy を修正
- 2663でサスペンド無視が @dhilpipre によって読み取られない問題を修正しました
最新バージョンへのアップデート
現在使用中のJavaエージェントのバージョンを特定するには、java -jar newrelic.jar -vを実行します。Javaエージェントのバージョンがコンソールに出力されます。
次に、最新バージョンのJavaエージェントにアップデートするには、以下の手順に従います。
- すべてのJavaエージェントのルートディレクトリを別の場所にバックアップします。そのディレクトリの名前を
NewRelic_Agent#.#.#に変更します。ここで、#.#.#はエージェントのバージョン番号です。 - エージェントをダウンロードします。
- 新しいエージェントのダウンロードファイルを解凍し、
newrelic-api.jarとnewrelic.jarを元のJavaエージェントのルートディレクトリにコピーします。 - 古い
newrelic.ymlとzipからダウンロードした新しいnewrelic.ymlを比較し、必要に応じてファイルを更新します。 - Javaディスパッチャを再起動します。
Javaエージェントのアップデート後に問題が発生する場合は、バックアップしたNew Relicエージェントディレクトリから復元します。
エージェント設定の差分のアップデート
エージェントの新しいバージョンをリリースする際に、newrelic.ymlに新しい設定を追加します。diffまたは別の差分ユーティリティを使用して変更内容を確認してから、新しい設定を古いファイルに追加できます。ライセンスキー、アプリ名、デフォルト設定の変更など、ファイルに対して行ったカスタマイズを上書きしないようにしてください。
たとえば、 Javaバージョン 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.> 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...この例では、これらの行はJavaエージェント バージョン 7.11.0 のデフォルトのnewrelic.ymlに追加されました。 7.11.0 以降に移行する場合は、これらの新しい行を元のnewrelic.ymlに追加する必要があります。
サポートステートメント:
- New Relic では、最新の機能とパフォーマンス上のメリットを確実に得られるよう、エージェントを定期的にアップグレードすることをお勧めします。さらに、古いリリースはサポート終了になるとサポートされなくなります。