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

Simple Log Service:ログフィールドのメトリックへの変換

最終更新日:Jun 11, 2026

e_to_metric データ変換関数を使用して、Logstore のログフィールドを MetricStore のメトリックに変換し、経時的な変化を追跡します。このトピックでは、NGINX アクセスログを例として使用します。

背景情報

アプリケーションのランタイムデータは、ログ、トレース、メトリックの 3 つのカテゴリに分類されます。ログは個別のイベントを記録し、トレースはシステム全体のリクエストを追跡し、メトリックは時系列の数値をキャプチャします。Log Service は、次の 2 種類のストレージを提供します:

  • Logstore

    Logstore は、Log Service でログを収集、保存、クエリします。詳細については、「Logstore」をご参照ください。

  • MetricStore

    MetricStore は、Log Service でメトリックを収集、保存、クエリします。MetricStore は PromQL クエリをサポートし、Prometheus プロトコルと互換性があります。詳細については、「MetricStore」をご参照ください。

通常、ログデータはメトリックデータよりも包括的です。メトリックは、本質的には構造化されたログエントリです。Log Service は、ログをメトリックに変換するために、次の 2 つの方法をサポートしています:

シナリオ

中国 (杭州) リージョンには、nginx-demo という名前の Logstore があり、NGINX のアクセスログが格納されています。

目的は、バックエンドサーバーごとに request_time (リクエスト時間) と upstream_response_time (アップストリーム応答時間) の傾向を監視することです。Logstore の request_timeupstream_response_time を、host フィールドに基づくラベル付きのメトリックに変換します。

body_bytes_sent:1750
host:www.example.com
http_referer:www.guide.example.com
http_user_agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_6; it-it) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27
http_x_forwarded_for:203.0.113.10
remote_addr:203.0.113.10
remote_user:p288
request_length:13741
request_method:GET
request_time:71
request_uri:/request/path-1/file-1
status:200
time_local:11/Aug/2021:06:52:27
upstream_response_time:0.66

前提条件

ログデータが収集されていること。詳細については、「データ収集」をご参照ください。

ステップ 1:MetricStore の作成

変換されたメトリックを格納するために、service-metric という名前の MetricStore を作成します。

  1. Simple Log Service コンソール にログインします。

  2. [プロジェクト] セクションで、目的のプロジェクトをクリックします。

    image

  3. [Metric Storage > Logstores] タブで、[+] アイコンをクリックします。

  4. Create Metricstore」パネルで、以下のパラメーターを設定し、OK をクリックします。

    パラメーター

    説明

    Metricstore Name

    Metricstore 名は、プロジェクト内で一意である必要があります。作成後に名前を変更することはできません。

    データ保持時間

    Metricstore で Simple Log Service によって収集された時系列データの保持期間。

    • [日数限定] をデータ保持パターンとして選択し、必要に応じてデータ保持期間を設定します。単位: 日。有効な値: 1~3000。

      警告
      • ログの保持期間が終了すると、ログは削除されます。

      • データ保持期間を短縮すると、Simple Log Service は期限切れのすべてのログを 1 時間以内に削除します。ただし、Simple Log Service コンソールのホームページにある 使用明細 は翌日に更新されます。たとえば、データ保持期間を 5 日から 1 日に変更した場合、Simple Log Service は過去 4 日分のログを 1 時間以内に削除します。

    • データ保持モードとして恒久的な保管:を選択すると、Simple Log Service は、収集されたメトリックを永続的に保持します。

      説明

      SDK を使用してデータ保持期間を照会し、返された値が 3650 の場合、それは永久保持を示します。

    シャード数:

    シャード数。Simple Log Service は、データの読み取りと書き込みを可能にするシャードを提供します。各シャードは、5 MB/秒の書き込み容量と 500 回/秒の書き込み、および 10 MB/秒の読み取り容量と 100 回/秒の読み取りをサポートします。各 Metricstore に最大 10 個のシャード、各プロジェクトに最大 200 個のシャードを作成できます。詳細については、「シャード」をご参照ください。

    自動シャーディング:

    自動シャーディング:」を有効にすると、Simple Log Service は、既存のシャードが書き込まれるデータを処理できない場合にシャード数を増加させます。詳細については、「シャードの管理」をご参照ください。

    最大破片:

    自動シャーディング:」スイッチをオンにすると、システムは最大256個の読み書きシャードへの自動シャーディングをサポートします。

ステップ 2:データ変換ジョブの作成

e_to_metric 関数を使用して、ステップ 1 で作成した MetricStore に結果を出力するデータ変換ジョブを作成します。

  1. データ変換ページに移動します

  2. 対象のログが Rawデータ タブに表示されるように、右上隅で時間範囲を選択します。

  3. 以下のデータ変換ステートメントを入力します。これにより、request_timeupstream_response_time はメトリクスに変換され、host はラベルとして hostname に名前変更されます。

    e_to_metric(
        names=[("request_time", "RequestTime"), ("upstream_response_time", "ResponseTime")],
        labels=[("host", "hostname")],
    )
  4. データのプレビュー をクリックし、Transformation Results タブを確認します。

    このタブには、__name__:RequestTime__value__:71.0、および __name__:ResponseTime__value__:0.66 の 2 つのメトリックデータポイントが表示されます。どちらも __labels__hostname#$#www.example.com__time_nano__1716172083000000000 です。

  5. データ変換ジョブを作成します。

    1. データ処理の保存 をクリックします。

    2. データ処理タスクの作成 パネルで、次のパラメーターを設定し、OK をクリックします。パラメーターの詳細については、「データ変換ジョブの作成」をご参照ください。

      パラメーター

      説明

      ジョブ名、表示名

      ジョブ名は一意である必要があります。表示名は、log2metric など、ユーザーが定義します。

      認証方式

      ソース Logstore の読み取り権限を付与するには、Default Role を選択します。

      宛先

      宛先名

      宛先の名前 (例: log2metric)。

      宛先リージョン

      宛先プロジェクトのリージョン (例: 中国 (杭州))。

      宛先プロジェクト

      変換結果を保存する宛先プロジェクト。

      宛先ストア

      宛先の MetricStore (例: service-metric)。

      認証方式

      Default Role を選択して、宛先の MetricStore service-metric への書き込み権限を付与します。

      処理範囲

      時間範囲

      すべて を選択します。

  1. データ変換ジョブのステータスを確認します。

    左側メニューで [Logstore] アイコンをクリックし、対象の Logstore を展開して [データ処理] > [データ変換] を選択し、対象のジョブをクリックして進行状況を表示します。

ステップ 3:時系列データのクエリ

  1. 左側メニューで、Metric Storage > Metricstores を選択し、対象の MetricStore を選択します。

  2. 右上隅で、[直近 15 分 (相対)] をクリックしてクエリ時間範囲を設定します。

    説明

    クエリと分析の結果には、最大 1 分の遅延が発生する場合があります。

  3. Preview Raw Data をクリックします。表示されたパネルで時間範囲を選択して、メトリクスが書き込まれていることを確認します。

    プレビューには、service-metric からの 2 つのメトリック、__name__:RequestTime__value__:71.0、および __name__:ResponseTime__value__:0.66 が表示されます。

  4. 次のいずれかの方法を使用してクエリステートメントを入力します。詳細な手順については、「時系列データのクエリと分析」をご参照ください。

    • PromQL 文を入力し、今すぐ実行 をクリックします。

      複数のクエリを追加できます。 結果は同じ時系列グラフに重ねて表示されます。

    • [メトリクス探索] ペインで、メトリックの横にある Add アイコンをクリックすると、クエリ文が自動的に生成されます。

      また、[メトリクス探索] ペインでメトリックの 検索を続ける をクリックしてラベル値を設定し、クエリを自動生成することもできます。 詳細については、「メトリック探索」をご参照ください。

    • 各ホストの RequestTime の傾向RequestTime

    • 各ホストの ResponseTime の傾向ReponseTime