Java エージェントは自動的にhost:port
名を JVM に割り当てます。デフォルト名が役に立たない場合は、New Relic UI で JVM を区別するために表示名を設定できます。サポートされているフレームワークの場合、Java エージェントは表示名の代わりにインスタンス名を使用します。
Java エージェントは、使用している環境に関わらず、ホスト、ポート、ディスパッチャ によって、実行中のエージェントを一意に識別します。
表示名 [#display-name]
APM UI のデフォルトのhost:port
ラベルが役に立たない場合は、New Relic UI でその名前を表示名で装飾できます。環境変数またはnewrelic.yml 構成ファイルのいずれかで、構成を介して表示名を設定します。環境変数は、構成ファイルの値よりも優先されます。JVM が再起動され、Java エージェントが再びレポートを作成した後、 host:port
に加えて、次の例に示すように表示名が JVM リストに表示されます。
表示名を設定するには
NEW_RELIC_PROCESS_HOST_DISPLAY_NAME
環境変数を設定します。
また- newrelic.ymlに
process_host.display_name
を設定します。
JVMを再起動すると、New RelicのUIに変更内容が表示されます。
ヒント
また、 システムプロパティ で表示名を設定することもできます。
インスタンス名
WebSphere および WebLogic のユーザーの場合、Java エージェントは、各アクティブなアプリサーバーインスタンスのインスタンス名も報告します。これは、APM Settings> Environment ページで確認できます。通常、この名前はアプリサーバから提供されます。インスタンス名が設定されている場合は、New Relic UI での表示名の代わりにその名前が使用されます。
ホスト名のロジックの優先順位
複数のホスト名設定がある場合 (たとえば、WebSphere を使用し、 display_name
プロパティも設定している場合)、エージェントは次の優先順位を使用します。
display_name
デフォルト名、WebSphere および WebLogic インスタンス名をオーバーライドします。- WebSphere と WebLogic のインスタンス名は、デフォルトの名前を上書きします。
- デフォルト (
host:port
) の名前の優先順位は最も低くなります。
ホストとエージェント固有の識別子
Javaエージェントは、ホスト、ポート、ディスパッチャを使用して、同じアプリ名でレポートする複数のJVMを一意に識別します。そのため、同じサーバー上で動作する複数のエージェントは、ポートやディスパッチャ名が異なる限り、別々に報告されます。
固有の識別子は、以下の値に基づいています。
- Host: オペレーティングシステムから派生した、アプリの親サーバの識別子です。この値は、Javaエージェントでは設定できません。
- ポート: アプリサーバーに関連付けられたポートです。エージェントがポート番号を判断できない場合や、アプリがアプリサーバーで実行されていない場合は、デフォルトで 0 となります。この値はユーザーが設定できます。
- Dispatcher Name: アプリサーバーの名前。例えば、Apache Tomcat、Glassfish、WebLogicなどです。アクティブなアプリサーバーがない場合は、デフォルトで Unknown となります。