すべてのプロダクト
Search
ドキュメントセンター

Application Real-Time Monitoring Service:ARMS Java SDK (非推奨)

最終更新日:Sep 10, 2026

ARMS SDK を使用すると、アプリケーションコード内でトレース ID と関連するトレースプロパティを動的に取得できます。

使用方法

エージェントバージョン 4.x 以降では、カスタムインストルメンテーションとトレースコンテキストの取得には、OpenTelemetry Java SDK の使用を推奨します:

バージョン 4.x のエージェントにアップグレードできない場合を除き、カスタムインストルメンテーションやトレースコンテキストの取得に ARMS SDK を使用することは推奨されません。

前提条件

  • ARMS コンソールで、アプリケーションに対してアプリケーションモニタリングを有効にし、Java アプリケーションでエージェントを起動していること。詳細については、「エージェントの手動インストール」をご参照ください。

  • アプリケーションに arms-sdk-1.7.3.jar の依存関係が含まれていること。

    <dependency>
        <groupId>com.alibaba.arms.apm</groupId>
        <artifactId>arms-sdk</artifactId>
        <version>1.7.3</version>
    </dependency>
    説明

    pom.xml ファイルから依存関係を取得できない場合は、arms-sdk-1.7.3.jar をダウンロードしてください。

トレース ID と RPC ID の取得

次のコードを使用して、トレース ID と RPC ID を取得します。

Span span = Tracer.builder().getSpan();   // 新しいスパンは作成されません。
String traceId = span.getTraceId();
String rpcId = span.getRpcId();

カスタム バゲージ の伝播

説明

Spring Cloud Gateway フィルターでバゲージを追加する場合、エージェントをバージョン 4.2.x にアップグレードし、カスタム設定で spring-bean プラグインを有効にすると、伝播は失敗します。これを解決するには、spring-bean プラグインを無効にするか、エージェントをバージョン 4.1.x 以前にダウングレードしてください。

カスタムバゲージを伝播するには、次のようにアイテムを設定・取得するコードを追加します:

  1. アプリケーションコードにカスタム バゲージ を追加します。

    Map<String, String> baggage = new HashMap<String, String>();
    baggage.put("key-01", "value-01");
    baggage.put("key-02", "value-02");
    baggage.put("key-03", "value-03");
    Span span = Tracer.builder().getSpan();
    span.withBaggage(baggage);
  2. アプリケーションコードからカスタム バゲージ を取得します。

    Span span = Tracer.builder().getSpan();
    Map<String, String> baggage = span.baggageItems();
  3. エージェントバージョン 4.x 以降では、バゲージは伝播されるだけです。エージェントは、このコンテンツを各スパンのタグに自動的に追加しません。このデータをタグに含める必要がある場合は、手動でスパンにカスタムタグを設定する必要があります。

スパン へのカスタムタグの設定

タグは、設定された特定のスパンにのみ適用され、他のスパンには伝播されません。カスタムタグを設定および取得するには、以下の手順に従ってください:

  1. アプリケーションコードで、スパンにカスタム タグ を追加します。複数のタグを追加できます。

    Span span = Tracer.builder().getSpan();
    // スパンにタグを追加します。
    span.setTag("tag-key1", "tag-value1");
    span.setTag("tag-key2", "tag-value2");
  2. スパンのカスタム タグ を取得します。

    Span span = Tracer.builder().getSpan();
    // スパンのタグを確認します。
    Map<String, String> tags = span.tags();

カスタム バゲージ と タグ によるトレースのクエリ

スパンに設定されたカスタム バゲージ と タグ を使用してトレースをクエリします。

  • バゲージ はダウンストリームサービスに伝播され、通常、ビジネスコンテキストの伝播に使用されます。過剰なバゲージアイテムの設定は避けてください。

  • タグ は現在のスパンにのみ適用されます。ビジネスデータ用に複数のタグを設定できます。

  1. ARMS コンソール にログインします。ナビゲーションペインで、[Application Monitoring] [Applications] を選択します。

  2. [Applications] ページで、上部で対象のリージョンを選択します。次に、アプリケーションを選択し、[Tag] フィールドにカスタムタグの値を入力して、[Search] をクリックします。

  3. トレースのリストで、対象のトレースの [Trace ID] をクリックします。

  4. [Traces] 詳細ページで、[Timeline] 列にカーソルを合わせると、現在のスパンのタグを表示できます。

    たとえば、カスタムタグ tag-userid (値が 123456789) と tag-bu (値が taobao) がスパンのタグに追加されます。

  5. エージェントバージョン 4.x 以降では、バゲージのコンテンツをスパンに書き込むには、まず「カスタムバゲージの伝播」の説明に従ってすべてのバゲージアイテムを取得します。次に、「スパンへのカスタムタグの設定」で説明されている方法で、それらをスパンに書き込みます。