コールグラフにキャプチャされるデータは、[Call Graph Settings] パネルで制御できます。
アクセス権
コールグラフ設定を構成するには、[Configure Call Graph Settings] 権限が必要です。
コールグラフの粒度
コールグラフの粒度を管理するには、以下の設定を使用します。
- Control granularity for Methods:低パフォーマンスのオーバーヘッドを確保するには、メソッド実行時間にしきい値(ミリ秒単位)を選択します。ここで指定された時間より実行時間が短いメソッドは、コールグラフから除外されます。
- Control granularity for SQL calls:SQL クエリのしきい値を指定できます。指定された時間(ミリ秒単位)よりも実行時間が短い SQL クエリは、コールグラフから除外されます。詳細については、Javaエージェントパフォーマンスの調整を参照してください。
Node.js エージェントでは、コールグラフ構成に SQL キャプチャ設定のみが適用されます。
コールグラフ構成にアクセスするには、[Configuration > Instrumentation] をクリックして、[Call Graph Settings] タブを選択します。アプリケーションのタイプごとにサブタブがあります。
コールグラフからのパッケージまたはネームスペースの除外
コールグラフには、数百ものメソッドが含まれる可能性があります。モニタリングしないクラスのあるパッケージ(Java)やネームスペース(.NET)は除外することができます。
Javaの場合、一部のパッケージはデフォルトで除外されています。これらのパッケージはExcluded Packagesリストに表示されます。デフォルトで除外されているパッケージは削除できません。ただし、除外されているパッケージの特定のサブパッケージを含めることは可能です。
コールグラフのインストゥルメンテーション ページから、コールグラフのインストゥルメンテーションをカスタマイズできます。このページで、次の構成オプションから選択します。
- 特定のパッケージまたは名前空間をコールグラフから除外するには、Add Custom Package Exclude(Java)または Add Custom Namespace Exclude(.NET)の構成オプションを使用します。
- パッケージまたは名前空間を常にコールグラフに表示させるには、Add Always Show Package/Class(Java)または Add Always Show Namespace/Class(.NET)の構成オプションを使用します。
コントローラはコールグラフを作成する際、除外されたパッケージと包含されたサブパッケージを使用して、どのコールを含めるか決定します。しかし、コントローラは除外されたパッケージの中からも一部のコールを含めます。たとえば、Webサービスコールが該当します。
SQLキャプチャの設定
SQLキャプチャ設定により、SQLステートメントをキャプチャし、動的パラメータをランタイム値にバインドした状態でコントローラUIに表示するかどうかを制御します。たとえば、次のようにSQLコールを構成するJavaコードを見てみましょう。
stmt = new PreparedStatement("select * from user where ssn = ?")
stmt.bind(1, "123-123-1234")
stmt.execute()
CODE
Capture Raw SQLオプションを有効にすると、AppDynamicsは次の形式でSQLコールをキャプチャして表示します。
select * from user where ssn = '123-123-1234'
CODE
Capture Raw SQL が無効な場合、SQL コールは、値にバインドされていない疑問符パラメータとともに元の形式で表示されます。capture-raw-sql を無効にし、SQL プリペアドステートメントで疑問符パラメータを使用すると、機密データがコントローラ UI に表示されなくなります。
重要な点としては、上記のように、SQL ステートメントの元のプリペアドステートメント形式で、機密の値をパラメータ化する必要があることに注意してください。以下のステートメントでは機密データがパラメータ化されていないため、Capture Raw SQL が有効か無効かを問わず、コントローラ UI に機密の可能性がある情報(社会保障番号)が表示されてしまいます。
stmt = new PreparedStatement("select * from user where ssn ='123-123-1234'")
CODE
[Call Graph Settings] タブで SQL キャプチャ設定を構成するには、[ SQL Capture Settings] セクションまでスクロールして、次のオプションのいずれかを選択します。