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

Managed Service for Prometheus:Prometheus データを MaxCompute に配信する

最終更新日:Aug 21, 2026

Prometheus インスタンスからデータをエクスポートしてカスタム処理を行うには、データ配信機能を使用してデータを MaxCompute に送信します。MaxCompute を使用すると、さまざまなソースからのデータに対してビッグデータ計算を実行し、その結果をレポート分析などのタスクに使用できます。

前提条件

注意事項

  • Virtual Private Cloud (VPC) 経由でデータを配信する場合、Prometheus インスタンスと宛先が異なる VPC にあるときは、宛先の vSwitch の CIDR ブロックを Prometheus インスタンスのホワイトリストに追加する必要があります。そうしないと、ネットワーク接続に失敗します。vSwitch の CIDR ブロックは、VPC コンソールの vSwitch 詳細ページで確認できます。

  • 次の表に、データ配信をサポートするデータソースを示します。

    インスタンスタイプ

    説明

    Prometheus for Alibaba Cloud Services

    名前が cloud-product-prometheus で始まる無料インスタンスは除きます。

    Prometheus for Container Service

    なし

    Prometheus for Flink Serverless

    なし

    Prometheus for Kubernetes

    なし

    汎用

    OpenTelemetry エンドポイントからレポートされたデータは除きます。

  • データ配信タスクの作成後に生成されたリアルタイムデータのみエクスポートできます。既存データをエクスポートすることはできません。

課金

MaxCompute にデータを配信すると、Function Compute (FC) サービスが作成されます。サービス名には {task_name}_SINK_FC_TO_MAXCOMPUTE というプレフィックスが付きます。Function Compute (FC) がデータを MaxCompute に書き込むため、FC サービスの料金が発生します。データは Function Compute (FC) に送信される前にバッチ処理されます。そのため、Function Compute (FC) の呼び出し回数が少ないほど、関連コストは低くなります。[Function Compute コンソール]にログインして、FC リソースのステータスを確認できます。

ステップ 1: MaxCompute リソースの準備

  1. MaxCompute ドキュメントに記載されているいずれかの方法を使用して、MaxCompute プロジェクトに接続します。詳細については、「接続ツールの選択」をご参照ください。

  2. テーブルスキーマを定義します。テーブルスキーマの列名は、Prometheus データのラベル名と一致する必要があります。列名に対応するラベルがない場合、その列には NULL 値が書き込まれます。複数のタイプのメトリクスがある場合、列名はすべてのメトリクスラベル名の和集合である必要があります。

たとえば、次の 2 つのメトリクスをエクスポートする場合を想定します。

メトリクス例 1

{
	"__name__": "metric1",
	"cluster_id": "***",
	"host": "***",
	"node_id": "***",
	"job": "***",
	"value": 347.51300048828125,
	"timestamp": 1703211584056
}

メトリクス例 2

{
	"__name__": "metric2",
	"cluster_id": "***",
	"job": "***",
  "instance": "****",
  "cpu": "1",
	"value": 1.0,
	"timestamp": 1703211584056
}

次の例に基づいて、MaxCompute に SQL テーブルを作成します。詳細については、「SQL を使用したデータ分析」をご参照ください。

CREATE TABLE metric (
  __name__ 		VARCHAR(50) NOT NULL,
  cluster_id 	VARCHAR(50),
  host 				VARCHAR(50),
  node_id 		VARCHAR(50),
  job 				VARCHAR(50),
  instance 		VARCHAR(50),
  cpu 				VARCHAR(50),
  value 			DOUBLE,
  timestamp		BIGINT
);
説明

テーブルには、少なくとも次のフィールドを含める必要があります: __name__、value、timestamp。これらのフィールドは、Prometheus データの基本タグです。ビジネス要件に基づいてテーブルスキーマを設計し、タグマッピング用に十分な数のフィールドを定義することを推奨します。主要なタグが欠落している場合、テーブルに大量の重複データが書き込まれます。

ステップ 2: データ配信タスクの作成

  1. にログインします。 Prometheusコンソールのマネージドサービス。

  2. 左側のナビゲーションウィンドウで、[Prometheus モニタリング] > [データ配信] をクリックします。

  3. [データ配信] ページで、上部のメニューバーからターゲットリージョンを選択し、[タスクの作成] をクリックします。

  4. ダイアログボックスで、[タスク名] と [タスクの説明] を入力し、[OK] をクリックします。

  5. [タスクの編集] ページで、データソースと宛先を設定します。

    1. [+ データソースの追加] をクリックし、次のパラメーターを設定してから [OK] をクリックします。

      設定項目

      説明

      例

      Prometheus インスタンス

      配信される Prometheus データソース。

      c78cb8273c02*****

      データフィルタリング

      フィルタリングするメトリックラベルを指定します。正規表現がサポートされています。複数の条件を指定する場合は、改行で区切ります。すべての条件が満たされた場合にのみデータが配信されます。

      __name__=AliyunEcs_CPUUtilization|AliyunEcs_memory_usedutilization
      regionId=cn-hangzhou
      id=i-2ze0mxp.*

      データラベリング

      配信されるメトリックデータに追加する新しいラベルを指定します。複数のラベルを追加する場合は、改行で区切ります。

      deliver_test_key1=ssss
      deliver_test_key2=yyyy
    2. [送信先の追加] をクリックし、ターゲットタイプ を MaxCompute に設定し、必要に応じて残りのフィールドを設定してから、[OK] をクリックします。

  6. 設定が完了したら、[タスクの編集] ページで [OK] をクリックし、次に [保存] をクリックしてデータ配信タスクを作成します。

ステップ 3: データ配信の確認

SQL エディターで、次の SQL ステートメントを入力して metric テーブルのデータをクエリします。実行 をクリックし、[結果] タブで実行結果を確認します。

select * from metric limit 20;