App Analytics

このページは、レガシー版 App Analytics に関するコンフィギュレーション情報を伴う非推奨機能について説明します。トラブルシューティングまたは古い設定の修正に利用可能です。トレース全体を完全に制御するには、取り込みコントロールおよび保持フィルターを使用してください。

新しいコンフィギュレーションオプションへの移行

取り込みコントロールページへ移動し、レガシー版コンフィギュレーションを使用しているサービスを確認します。Legacy Setup のステータスでフラグが立てられています。

新しいコンフィギュレーションオプションへ移行するには、Legacy Setup のフラグ付きのサービスから、すべてのレガシー版 App Analytics コンフィギュレーションオプションを削除します。次に、Datadog Agent およびトレーシングライブラリのサンプリングメカニズムを実装してトレースを送信します。

App Analytics のセットアップ

App Analytics の構成オプションは、トレーシングライブラリと Datadog Agent に配置されています。ライブラリでは、サービスからの分析スパンは、自動または手動のいずれかで生成されます。

トレーシングライブラリで

自動コンフィギュレーション

App Analytics は、Java トレースクライアントのバージョン 0.25.0 以降で使用できます。トレースクライアントでコンフィギュレーションパラメーターを 1 つ設定することで、すべての web サーバーインテグレーションに対してグローバルに有効にすることができます。

  • システムプロパティ: -Ddd.trace.analytics.enabled=true

その他のサービスの構成 (オプション)

インテグレーションごとの構成

グローバルに設定するほか、次の設定を使用して個々のインテグレーションに対して App Analytics を有効または無効にすることも可能です。

  • システムプロパティ: -Ddd.<integration>.analytics.enabled=true
  • 環境変数: DD_<INTEGRATION>_ANALYTICS_ENABLED=true

カスタムサービスを送信するインテグレーションに対し、グローバルコンフィギュレーションに加えて上記を使用します。例えば、カスタムサービスとして送信される JMS スパンの場合、次のように設定して App Analytics ですべての JMS トレースを有効にします。

  • システムプロパティ: -Ddd.jms.analytics.enabled=true
  • 環境変数: DD_JMS_ANALYTICS_ENABLED=true

インテグレーション名は、インテグレーションテーブルにあります。

データベースサービス

デフォルトでは、App Analytics はデータベーストレースをキャプチャしないため、各インテグレーションに対して手動で収集を有効にする必要があります。例:

  • システムプロパティ: -Ddd.jdbc.analytics.enabled=true
  • 環境変数: DD_JDBC_ANALYTICS_ENABLED=true
カスタムインスツルメンテーション

カスタムインスツルメンテーションを使用するアプリケーションは、スパンで ANALYTICS_SAMPLE_RATE タグを設定することで App Analytics を有効にできます。

import datadog.trace.api.DDTags;
import datadog.trace.api.Trace;
import io.opentracing.Tracer;
import io.opentracing.util.GlobalTracer;

class MyClass {
  @Trace
  void myMethod() {
    final Span span = GlobalTracer.get().activeSpan();
    // @Trace アノテーションにより送信されるスパン。
    if (span != null) {
      span.setTag(DDTags.SERVICE, "<SERVICE_NAME>");
      span.setTag(DDTags.ANALYTICS_SAMPLE_RATE, 1.0);
    }
  }
}

注: dd.trace.methods または trace annotations スパン向けの App analytics は、-Ddd.trace-annotation.analytics.enabled=true の設定により有効化することができます。

Datadog Agent で

このセクションでは、レガシー App Analytics に関連する構成情報とともに、非推奨の機能について説明します。

サービスごとに解析するスパンの割合を構成するには、datadog.yaml ファイルに以下のように設定します。

apm_config:
  analyzed_rate_by_service:
    service_A: 1
    service_B: 0.2
    service_C: 0.05

サービスおよび操作名ごとに解析するスパンの割合を構成するには、datadog.yaml ファイルに以下のように設定します。

apm_config:
  analyzed_spans:
    service_A|operation_name_X: 1
    service_A|operation_name_Y: 0.25
    service_B|operation_name_Z: 0.01

トラブルシューティング: 1 秒あたりの最大イベント制限

Agent ログに以下のエラーメッセージが表示される場合、アプリケーションは、デフォルトで APM で許可されている毎秒 200 件を超えるトレースイベントを発行しています。

Max events per second reached (current=300.00/s, max=200.00/s). Some events are now being dropped (sample rate=0.54). Consider adjusting event sampling rates.

Agent の APM レート制限を増やすには、Agent のコンフィギュレーションファイル (apm_config: セクションの下) 内で max_events_per_second 属性を構成します。コンテナ化されたデプロイメント (Docker、Kubernetes など) の場合は、DD_APM_MAX_EPS 環境変数を使用します。

: APM レート制限を増やすと、App Analytics のコストが増加する可能性があります。

PREVIEWING: jen.gilbert/cdocs-build