構成ディレクトリとログ・ディレクトリの再配置

選択したAPM Javaエージェント・プロビジョニング・シナリオにかかわらず、単一サーバーと共有場所のどちらの場合も、デフォルトでは、エージェント・インストールの構成ディレクトリとログ・ディレクトリはいずれも、バイナリが読み取られるのと同じエージェント・インストールから読み取られ、そこに書き込まれます。

ただし、デプロイメント・シナリオによっては、構成ディレクトリとログ・ディレクトリをエージェント・インストールから分離することが望ましく、プロビジョニングされたエージェントからエージェント構成ディレクトリまたはログ・ディレクトリ(あるいはその両方)を再配置することもあります。

構成ディレクトリとログ・ディレクトリの場所はどちらも、Javaシステム・プロパティまたは環境変数で上書きできます:

システム・プロパティを使用したカスタム構成ディレクトリまたはログ・ディレクトリ(あるいはその両方)を含むエージェントの設定

javaシステム・プロパティを設定する構文は、アプリケーション・サーバーによって異なります。

通常、Javaコマンドにシステム・プロパティを追加するために起動スクリプトを変更する必要がある場合は、ダッシュ付きの大文字のD( -D )および等号( = )で区切ったキーと値をプロパティ引数の前に付ける必要があります。
  1. エージェントをアプリケーション・サーバーまたは共有場所にプロビジョニングします。
  2. プロビジョニングされたエージェント宛先から新しい場所に、構成ディレクトリ(バージョン番号を持つすべてのサブディレクティブを含む)をコピーします。
  3. 新しい場所を含むシステム・プロパティcom.oracle.apm.agent.config.dirまたはcom.oracle.apm.agent.log.dir (あるいはその両方)をJVM起動に追加します。javaシステム・プロパティを追加するための適切な方法については、アプリケーション・サーバーのドキュメントを参照してください。例: java … -javaagent:<agent_path>/oracle-apm-agent/bootstrap/ApmAgent.jar -Dcom.oracle.apm.agent.config.dir=<config_path> -Dcom.oracle.apm.agent.log.dir=<log_path>...
  4. エージェントが新しい構成ディレクトリまたはログ・ディレクトリ(あるいはその両方)を取得できるように、スクリプトまたは設定を保存し、アプリケーション・サーバーを再起動します。

環境変数を使用したカスタム構成ディレクトリまたはログ・ディレクトリ(あるいはその両方)を含むエージェントの設定

適切なカスタム構成ディレクトリまたはログ・ディレクトリ(あるいはその両方)を使用して環境変数を設定します。

シナリオ1:

イメージ内にAPMエージェントを持つdockerイメージを作成する必要がありますが、構成とログはNASに配置する必要があります。

これを行うには、次の3つの方法があります:
  • アプリケーション・サーバー起動スクリプトを、NAS上の構成とログを指す構成パスとログ・パスの両方を含むように変更します
  • dockerイメージ内に構成ディレクトリおよびログのパスの環境変数を設定します。
  • docker起動時に構成ディレクトリおよびログのパスの環境変数を渡します。

シナリオ2:

すべてのバイナリが常に使用可能になるように、エージェントを各アプリケーション・サーバー・ホストにプロビジョニングする必要がありますが、構成は共有ドライブからロードする必要があります。

カスタム構成ディレクトリのみを使用するようにAPMエージェントを構成するには、com.oracle.apm.agent.config.dirシステム・プロパティ(またはcom_oracle_apm_agent_config_dir環境変数)を設定するだけです。これにより、エージェント・ログ・ファイルがエージェント・バイナリとともに残ります。