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

Simple Log Service:JaegerからSimple Log Serviceへのトレースデータのインポート

最終更新日:Sep 03, 2024

JaegerからSimple Log Serviceにトレースデータをインポートするか、OpenTelemetry Collectorを使用してトレースデータをSimple Log Serviceに転送できます。

前提条件

トレースインスタンスが作成されます。 詳細については、「トレースインスタンスの作成」をご参照ください。

Jaegerからトレースデータをインポートする

Jaegerプロトコルを使用してトレースデータをSimple Log Serviceにインポートする場合は、Jaegerトレースプラットフォームでエンドポイントと認証の設定を行う必要があります。 次のリストは、必要な設定を示しています。

  • エンドポイントの設定

    • HTTPSエンドポイントは ${endpoint}/jaeger/api/traces形式です。 例: https://test-project.cn-hangzhou-intranet.log.aliyuncs.com/jaeger/api/traces

    • gRPCエンドポイントは ${endpoint}:10010形式です。 例: test-project.cn-hangzhou-intranet.log.aliyuncs.com:10010

      重要

      送信中のデータセキュリティを確保する場合は、gRPCプロトコルを使用するときにトランスポート層セキュリティ (TLS) を有効にする必要があります。

    ${endpoint} 変数を実際の値に置き換える必要があります。 次の表では、変数について説明します。

    表 1. 変数の説明

    変数

    説明

    ${endpoint}

    エンドポイント。 形式は ${project}.${region-endpoint} です。

    • ${project}: Simple Log Serviceプロジェクトの名前。

    • ${region-endpoint}: プロジェクトのエンドポイント。 Simple Log Serviceには、プロジェクトのパブリックまたは内部エンドポイントを使用してアクセスできます。 内部エンドポイントは、クラシックネットワークまたは仮想プライベートクラウド (VPC) を介したアクセスに使用されます。 詳細については、「エンドポイント」をご参照ください。

    test-project.cn-hangzhou.log.aliyuncs.com

  • 認証設定

    gRPCまたはHTTPSプロトコルのヘッダー、またはJaegerプロトコルの [タグ] フィールドで認証設定を構成できます。 次の表に、必須フィールドを示します。

    Jaegerタグフィールド

    gRPCまたはHTTPSヘッダーキー

    説明

    sls.otel.project

    x-sls-otel-project

    Simple Log Serviceプロジェクトの名前。

    test-project

    sls.otel.instanceid

    x-sls-otel-instance-id

    トレースインスタンスのID。 詳細については、「トレースインスタンスの作成」をご参照ください。

    テストトレース

    sls.otel.akid

    x-sls-otel-ak-id

    Alibaba CloudアカウントのAccessKey ID。

    Simple Log Serviceプロジェクトの書き込み権限のみを持つResource Access Management (RAM) ユーザーのAccessKeyペアを使用することを推奨します。 AccessKey ペアは、AccessKey ID と AccessKey Secret で構成されます。 特定のプロジェクトの書き込み権限をRAMユーザーに付与する方法については、「カスタムポリシーを使用してRAMユーザーに権限を付与する」をご参照ください。 AccessKeyペアの取得方法については、「AccessKeyペア」をご参照ください。

    なし

    sls.otel.aksecret

    x-sls-otel-ak-secret

    Alibaba CloudアカウントのAccessKeyシークレット。

    Simple Log Serviceプロジェクトに対する書き込み権限のみを持つRAMユーザーのAccessKeyペアを使用することを推奨します。

    なし

OpenTelemetryコレクターを使用してトレースデータを転送する

  1. OpenTelemetry Collectorをインストールします。

    1. OpenTelemetry Collectorのダウンロード

    2. OpenTelemetryコレクターを設定します。

      1. config.yamlファイルを作成します。

      2. 次のコードをconfig.yamlファイルに追加します。

        次のコードの変数を実際の値に置き換えます。 変数の詳細については、「変数の説明」をご参照ください。

        receivers:
          jaeger:
            protocols:
              grpc:
                endpoint: 0.0.0.0:6831
              thrift_binary:
                endpoint: 0.0.0.0:6832
              thrift_compact:
                endpoint: 0.0.0.0:6833
              thrift_http:
                endpoint: 0.0.0.0:6834
        exporters:
          logging/detail:
            loglevel: debug
          alibabacloud_logservice/sls-trace:
            endpoint: "${endpoint}"
            project: "${project}"
            logstore: "${instance}-traces"
            access_key_id: "${access-key-id}"
            access_key_secret: "${access-key-secret}"
        
        service:
          pipelines:
            traces:
              receivers: [jaeger]        # Set the receivers parameter to jaeger. 
              exporters: [alibabacloud_logservice/sls-trace]       # Set the exporters parameter to alibabacloud_logservice/sls-trace. 
              # for debug
              #exporters: [logging/detail,alibabacloud_logservice/sls-trace]

        表 2. 変数の説明

        変数

        説明

        ${endpoint}

        Simple Log Serviceのエンドポイント。 形式は ${region-endpoint} です。 ${region-endpoint} は、実際にはSimple Log Serviceプロジェクトのエンドポイントです。 Simple Log Serviceには、プロジェクトのパブリックまたは内部エンドポイントを使用してアクセスできます。 内部エンドポイントは、クラシックネットワークまたはVPC経由のアクセスに使用されます。 詳細については、「エンドポイント」をご参照ください。

        cn-hangzhou.log.aliyuncs.com:10010

        ${project}

        Simple Log Serviceプロジェクトの名前。

        test-project

        ${instance}

        トレースインスタンスの名前。 詳細については、「トレースインスタンスの作成」をご参照ください。

        テストトレース

        ${access-key-id}

        Alibaba CloudアカウントのAccessKey ID。

        Simple Log Serviceプロジェクトに対する書き込み権限のみを持つRAMユーザーのAccessKeyペアを使用することを推奨します。 特定のプロジェクトの書き込み権限をRAMユーザーに付与する方法については、「カスタムポリシーを使用してRAMユーザーに権限を付与する」をご参照ください。 AccessKeyペアの取得方法については、「AccessKeyペア」をご参照ください。

        なし

        ${access-key-secret}

        Alibaba CloudアカウントのAccessKeyシークレット。

        Simple Log Serviceプロジェクトに対する書き込み権限のみを持つRAMユーザーのAccessKeyペアを使用することを推奨します。

        なし

    3. OpenTelemetryコレクターを起動します。

      ./otelcontribcol_linux_amd64 --config="./config.yaml"
  2. Jaegerを設定します。

    Jaegerトレースシステムの出力エンドポイントを、OpenTelemetry Collectorがリッスンできるエンドポイントに変更します。 たとえば、OpenTelemetry Collectorのエンドポイントが ${collector-host} の場合、Jaegerトレースシステムの出力エンドポイントを ${collector-host}: ${port} /api/tracesに変更する必要があります。

    説明

    データの解析に失敗したためにOpenTelemetry Collectorからエラーが返された場合は、Jaegerトレースシステムの4つの受信モードを切り替えて問題のトラブルシューティングを行うことができます。

次のステップ