Java エージェントの動的インスツルメンテーションが動作しない
対象: CA APM 9.x
apmdevops102jp
対象: CA APM 9.x
問題の状況
Java エージェントの動的インスツルメンテーションが動作しません。
解決方法
注:
完全な動的インスツルメンテーションの機能を使用するには、1.6.0_17 以前の JRE をインストールします。JRE 1.6.0_18 以降の場合、Web Start を使用する Workstation では、動的インスツルメンテーション機能はすべて使用できません。動的インスツルメンテーションでは、/logs ディレクトリに Derby データベースが作成されます。動的インスツルメンテーションを有効にするには、以下の手順に従います。
- エージェントの監視対象となるアプリケーションを実行しているユーザが、<Agent_Home> ディレクトリおよび <Agent_Home>/logs ディレクトリへの書き込みアクセス権を所有していることを確認します。
- wily/ext/DynInstrSupport15.jar が <Agent_Home>\ext ディレクトリにあることを確認します。
- introscope.agent.remoteagentdynamicinstrumentation.enabled=true を設定します。
- DI.pbd を IntroscopeAgent.profile に追加します。
- 管理対象アプリケーションを再起動します。
動的インスツルメンテーションで表示されるのは、JVM がロードするクラスのみです。以下のような一部のクラスは、動的にはインスツルメントできません。
- アクティブな PBD ですでに SkipClass または SkipPackage となっているクラス(wily または カスタム PBD によりバンドルされている)
- バイト コードを持たない特殊なクラス、または実行時にバイト コードを自動的に生成するクラス
問題が解決されない場合、カスタマ サポートに問い合わせる前に、以下の情報を収集してください。
- 以下のログ モジュールを有効にして、動的インスツルメンテーションの動作に関する詳細情報を収集します。
- log4j.logger.IntroscopeAgent.DynamicInstrumentation.Performance=DEBUG
- log4j.logger.IntroscopeAgent.DynamicInstrumentation=DEBUG
- log4j.logger.IntroscopeAgent.ADynamicInstrumentationService=DEBUG
- 問題を再現して、以下のファイルの収集します。CA APM 9.1 の場合:
- [Java_Agent_Home]\core\config\*.profile
- [Java_Agent_Home]\logs\*.log*
- [Java_Agent_Home]\logs\derby.*
- [Java_Agent_Home]\core\config\dynamic\*
- [Java_Agent_Home]\*.profile
- [Java_Agent_Home]\logs\*.log*
- [Java_Agent_Home]\logs\derby.*
- [Java_Agent_Home]\dynamic\*