• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

Java用New Relicの概要

New RelicのJavaエージェントを使用すると、コード内のパフォーマンスの問題から小さなエラーまですべてを追跡できます。エージェントは1分ごとにメトリックタイムスライスとイベントデータをNew Relicのユーザーインタフェースに載せます。該当するデータの所有者(オーナー)はインタフェースにサインインしてデータを使用し、ウェブサイトのパフォーマンスを確認できます。

New Relic Javaエージェントを使用して、「私のアプリが遅い」のチュートリアルでアプリのパフォーマンスの問題を解決します。

インストレーション

Javaエージェントを使用するには、

  1. システムがJavaエージェントの互換性および要件を満たしていることを確認してください。
  2. まだの場合は、無料のアカウントにサインアップしてください。
  3. ランチャーを使用して、または次の標準的なインストレーション手順に従って、Javaエージェントをインストールします。ツールやフレームワークに応じて、追加のインストール手順を参照してJavaエージェントをインストールまたは設定します。
インストールドキュメントを読む
Javaデータの追加

New Relic UIでアプリのパフォーマンスを表示するには、one.newrelic.com > All capabilities > APM & services >(アプリを選択)> Summaryに移動します。APMユーザーインタフェースには専用のJVMメトリクスページトランザクションエラーの詳細、スレッドプロファイラツールが含まれており、Javaスレッドのサンプリング、スタックトレースのレポート作成などを実行できます。

また、エージェントインストゥルメンテーションを拡張し、当社のメトリクスとイベントエクスプローラーダッシュボードなど、他のNew Relic機能でデータを調査することもできます。

起動設定

Javaエージェントは、newrelic.jarと同じディレクトリにある必要がある、newrelic.ymlファイルからスタートアップ設定を読み込みます。また、Javaシステムのプロパティを使用して設定を上書きすることもできます。

エージェントは、スタートアップ(ブートストラップ)時に、license_keyapp_nameの設定が必要です。ログファイルの場所やその他の設定はnewrelic.ymlファイルでカスタマイズできます。また、アプリケーションサーバーが同一のJVMで複数のアプリケーションを実行している場合は、命名設定を調整することができます。

設定オプション

New Relicウェブインタフェースからアプリケーションのレポーティングをサーバーサイドコンフィグレーションを使用して設定できます。変更内容はJVMを再起動した際にアプリケーションをレポートするすべてのエージェントに適用されます。ただし、サーバーサイドコンフィグレーションを使用する場合は、引き続き必要な設定(license_keyapp_name)をローカル設定ファイルに保持する必要があります。

トランザクションのトレースとエラーのスナップショットの両方において、オプションでHTTPパラメーターを記録することもできます。HTTPパラメーターには、クレジットカード番号のような機密情報が含まれる場合があります。エージェントには特定の名前を持ったパラメーター以外のHTTPパラメーターを収集するような、データセキュリティを確保するための設定オプションが複数存在します。

APMおよびインフラストラクチャデータのログを表示

また、ログとアプリケーションのデータを統合して、トラブルシューティングをより簡単かつ迅速にできます。コンテキストのログでは、エラーとトレースに関連するログメッセージをアプリケーションのUIで直接表示できます。また、Kubernetesクラスタなど、インフラストラクチャデータのコンテキストでログを表示することもできます。別のUIページに切り替える必要はありません。

追加のインストゥルメンテーション

Javaエージェントをインストール後、以下のいずれかの方法を使用してインストゥルメンテーションを拡張できます。

JVMの再起動タイミング

設定ファイルまたはカスタムXMLを変更する場合は、ほぼすべての場合にJVMを再起動する必要があります。再起動が不要なのは、以下の4つの場合に限定されます。

JVMの再起動は、次の場合は不要です。

コメント

ログレベルまたは監査モードの変更

単にJavaエージェント設定ファイルlog_levelaudit_modeを変更する場合は、JVMを再起動する必要はありません。

カスタムインストゥルメンテーションXMLファイル

JVMを再起動するかどうかは、Javaエージェントのバージョンによって異なります。

  • 3.15.0以上:extensionsフォルダ内のカスタムインストゥルメンテーションXMLファイルを更新する場合、更新内容は1分以内に自動的に再読み込みされます。
  • Javaエージェントのバージョン3.15.0以下:バージョン3.15.0以下のエージェントを使用している場合は、JVMを再起動する必要があります。

ブレーカーの変更

Javaカスタムインストゥルメンテーション用のブレーカーを変更する場合は、JVMの再起動は不要です。

無視されたまたは想定済みのエラー

newrelic.ymlファイルを設定してエラーを無視または想定している場合は、JVMを再起動する必要はありません。これには、バージョン3.40.0以上のJavaエージェントを使用している場合に、newrelic.ymlファイルにステータスコードまたはクラスを追加することが含まれます。例:

  • ignore_status_codes
  • expected_status_codes
  • ignore_classes
  • ignore_messages
  • expected_classes
  • expected_messages

その他すべての変更についてはエージェントの再起動、つまりJVMの再起動が必要です。

JSR 163準拠

New Relic Javaエージェントはウェブのトランザクションを監視し、その情報を受信し、強力なデータセキュリティ対策を施したNew Relicのユーザーインタフェースにその情報を伝達します。このエージェントは、JVMの起動処理を変更することでJVMによってアクティブ化される、JSR 163準拠のjavaagentとしてパッケージ化されています。有効化されると、エージェントはそれ自体をクラス読み込み処理の中に組み込み、バイトコードインストゥルメンテーション(bci)を使用してクラスメソッドをインストゥルメントします。

Webアプリケーションへの影響を最小限に抑えるように設計されたクラスはすべて、ユーザー独自のクラスと衝突しないように、newrelicパッケージネームスペースに存在します。このエージェントは、ソフトウェアプローブの挿入にASMのbciエンジンを使用します。

このエージェントは、オペレーティングシステム、Javaのバージョン、システムのプロパティ、New Relicの設定ファイルなど、使用中のホスト環境に関する基本的な情報を受信します。また、このエージェントはJVMとJMXからデータをポーリングします。

トラブルシューティング手順

問題がある場合は、そのセクションのデータが表示されない、およびその他のトラブルシューティング文書を参照してください。

Copyright © 2024 New Relic株式会社。

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