ヘルプ APM APM(Java版) Javaアノテーションによるカスタム インストルメント

Javaアノテーションによるカスタム インストルメント

Javaアノテーションの利用によって、APMインサイトは、アプリケーションのクラス・メソッドのカスタム インストルメントを容易に実現しています。これによって、トランザクションの名称をカスタマイズし、カスタム コンポーネントの割り当てが可能となります。

この機能は、エージェントのバージョン2.2から利用できます。

Javaエージェントの設定手順

  1. 要件としては、apminsight-javaagent.zipのダウンロードが必須です。これには、エージェントのjarおよび関連ファイル、ならびに、apminsight-javaagent-api.jarが含まれます。
  2. apminsight-javaagent-api.jarファイルをプロジェクト ビルドパスに含め、このファイルをアプリケーションの他のライブラリとあわせて、エクスポートしてください。
  3. JavaエージェントのAPIライブラリでは、2つのアノテーションを提供し、アプリケーションで、カスタム クラスやメソッドのパフォーマンスの追跡に利用いただけます。
  • @ApmTracker:組み込みやトレース取得の対象とする、あらゆるクラスとメソッドに使えます。
  • @ApmRootTracker:メソッドにのみ利用可能で、バックグラウンド トランザクションのエントリポイントとなりうるメソッドに使います。

@ApmTracker

属性:

  • component:追加属性

アノテートされるクラスやメソッドの、カスタム コンポーネントを定義します。

  • name:追加属性

アノテートされる要素のカスタム名で、実際のメソッド名であるかのようにふるまいます。
メソッドのパラメーターをカスタム名で利用するには、冒頭に「$」をつけ、引数のインデックス番号を指定します(インデックスは1からスタートです)。

インストルメントされたメソッドと、そのカスタム名は、トレースで確認できます。

@ApmRootTracker

属性

  • component:追加属性

アノテートされたメソッドに、カスタム コンポーネントを定義します。

  • name:追加属性

アノテートされる要素のカスタム名で、実際のメソッド名であるかのようにふるまいます。
メソッドのパラメーターをカスタム名で利用するには、冒頭に「$」をつけ、引数のインデックス番号を指定します(インデックスは1からスタートです)。

  • txnName:必須項目

メソッドがトランザクションのエントリポイントである場合のみ、バックグラウンド トランザクションの名前を定義します。それ以外のメソッドは、ジェネリック メソッドとして追跡し、トレースに追加します。

トランザクションは、属性txnNameごとの固有の値にしたがって、命名されます。