MicronautでAPMトレーサを使用
MicronautでAPMトレーサを使用するには、次を行います:
- バージョンの確認: MicronautのAPMトレーサはAPMエージェント・バージョン1.7以上でサポートされています。
- APMトレーサをMavenプロジェクトに追加します。詳細は、MavenプロジェクトへのAPMトレーサの追加を参照してください。
- 依存関係を
pom.xml
に追加します。- Micronaut 3.xの場合は、次を追加します。
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Micronaut 4.xの場合は、次を追加します。
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut4</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Micronaut 3.xの場合は、次を追加します。
- Micronautのトレース統合は、Open Tracing APIを公開するio.opentracing.tracer Beanを登録します。前述の依存関係を使用して、APMトレーサをデフォルト(グローバル)トレーサとして構成します。
- Micronautのトレース構成。
APMトレーサは、Micronautのapplication.ymlファイルで次のプロパティを使用します:
プロパティ デフォルト 必須 説明 有効
false ○ APMトレーサを有効にするためのプロパティ。デフォルト値はfalseです。これはnullにできません。 データ・アップロード・キー
○ Oracle APMサービス・クラウド通信に必要なAPMデータ・アップロード・キー。 data-upload-endpoint ○ Oracle APMサービス・クラウド通信に必要なAPMデータ・アップロード・エンドポイント。 collect-metrics true いいえ サーバー・メトリックを収集し、OCI APMサービス・クラウドにレポートします。
デフォルトはtrueです。
ユーザーは、OCI Telemetryからすべての収集済サーバー・メトリックにアクセスできます。collect-resources true いいえ サーバー・リソースを収集し、OCI APMサービス・クラウドにレポートします。
収集されたすべてのリソースは、データ問合せのディメンションとして使用されます。log-directory JVM作業ディレクトリ内のapm-tracer-log いいえ すべてのAPMトレーサ・ログが書き込まれるログ・ディレクトリのフル・パス。これが設定されていない場合、デフォルトのログ・ディレクトリ (apm-tracer-log)
がJVMの作業ディレクトリ内に作成されます。tags いいえ すべてのトレース・スパンに含める静的タグ。 properties いいえ 追加のAPMトレーサ・プロパティ。これにより、APMトレーサの起動時にプログラムによってプロパティを設定できます。
キーまたは値がnullの場合、プロパティは無視されます。
次の構成は、application.ymlファイルの tracingセクションの子ノード(oracleapm)として追加する必要があります。micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: …
例:- YAML形式で指定する必要があります。デフォルトのファイル名は
application.yml
です。次の例を参照してください:tracing: oracleapm: enabled: true data-upload-key: <data upload endpoint of your OCI domain> data-upload-endpoint: <privatedata key of your OCI domain> collect-resources: true collect-metrics: true log-directory: "/user/apm/log " tags: tag1: false tag2: 123 tag3: "stringWithQuotes" tag4: 1e4 tag5: 0.32 tag6: stringWoQuotes properties: com.oracle.apm.agent.logging.level : DEBUG com.oracle.apm.agent.key1 : value1
- YAML形式で指定する必要があります。デフォルトのファイル名は
- スレッド・スナップショット: OracleApmトレーサは、スレッド・スナップショット機能をサポートしています。
スレッド・スナップショットを使用すると、詳細なダイブ分析に使用できるスレッド・スタック・スナップショットを収集できます。スレッド・スナップショットの詳細は、APMトレーサでのスレッド・スナップショットの構成を参照してください。
Micronautのスレッドスナップショットを構成するには、次を実行します。-
application.yml
構成ファイルを開き、トレース・セクションに移動して、次を追加します:collect-deep-dive-trace-snapshot: true
-
新しいdeep- dive- propertiesセクションを、tracingの下にスレッド・スナップショット・プロパティとともに追加します:
deep-dive-properties: com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute: 100 com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute: 200 com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS: 250 com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace: 16 com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot: 256 com.oracle.apm.agent.deepdive.logLevel: INFO com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent: 90 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold: 3 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold: 5 com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold: 50 com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold: 60000
例:
micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: enabled: true data-upload-key: <data upload endpoint of your OCI domain> data-upload-endpoint: <privatedata key of your OCI domain> collect-resources: true collect-metrics: true log-directory: "/user/apm/log " collect-deep-dive-trace-snapshot: true deep-dive-properties: com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute: 100 com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute: 200 com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS: 250 com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace: 16 com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot: 256 com.oracle.apm.agent.deepdive.logLevel: INFO com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent: 90 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold: 3 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold: 5 com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold: 50 com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold: 60000
-