Alibaba Cloud Managed Service for Prometheus は、HTTP API URL を提供します。 HTTP API URL を使用して、Prometheus インスタンスのモニタリングデータをセルフマネージド Grafana システムにインポートしたり、Prometheus API を使用してカスタム開発用のモニタリングデータを取得したりできます。
前提条件
Prometheus インスタンスが作成されていること。 詳細については、以下のトピックをご参照ください。
ステップ 1:HTTP API URL を取得する
CloudMonitor コンソール にログインします。 左側のナビゲーションウィンドウで、 を選択します。 [インスタンス] ページが表示されます。
上部のナビゲーションバーで、Prometheus インスタンスがデプロイされているリージョンを選択し、Prometheus インスタンスを見つけ、[アクション] 列の [設定] をクリックします。
[設定] タブで、パブリックまたはインターナル HTTP API URL をコピーします。

オプション。 Prometheus V1 インスタンスの場合、[トークンの生成] をクリックして認証トークンを取得します。 トークンは、モニタリングデータが Grafana にインポートされるときのデータセキュリティを確保するために使用されます。
重要Prometheus V1 インスタンスの場合:認証トークンが生成された後、Prometheus インスタンスをデータソースとして Grafana システムに追加するときに、トークンを指定する必要があります。 そうしないと、Prometheus インスタンスからモニタリングデータを読み取ることができません。
Prometheus V2 インスタンスの場合:デフォルトでは、データアクセスにはアカウントの AccessKey ID と AccessKey シークレットの両方が必要であり、関連付けられた RAM ユーザーは AliyunPrometheusMetricReadAccess または AliyunCloudMonitorFullAccess システム権限 を持っている必要があります。
ステップ 2:セルフマネージド Grafana システムに HTTP API URL を追加する
Grafana システムでデータソースを設定します。
Grafana システムに管理者としてログインします。
ページの左上隅にある
アイコンをクリックします。左側のナビゲーションウィンドウで、 を選択します。
説明このメニューは管理者のみが表示できます。
[データソース] タブで、[+ データソースを追加] をクリックします。
[データソースを追加] ページで、[Prometheus] をクリックします。
[設定] タブで、[名前] フィールドにダッシュボード名を入力し、ステップ 1:Prometheus サーバーの URL を取得する で取得した Prometheus サーバー URL を HTTP セクションの [Prometheus サーバー URL] フィールドに入力します。
セキュリティ強化を設定します。
Prometheus V1(オプション)
トークンを生成した場合は、[カスタム HTTP ヘッダー] セクションで [+ ヘッダーを追加] をクリックし、[ヘッダー] パラメーターを [認証] に設定し、[値] パラメーターを ステップ 1:HTTP API URL を取得する で生成されたトークンに設定します。

Prometheus V2
[Basic 認証] をオンにします。 [ユーザー] パラメーターに AccessKey ID を設定し、[パスワード] パラメーターに AccessKey シークレットを設定します。

[保存 & テスト] をクリックします。
結果を確認します。
Grafana システムにログインします。
ページの左上隅にある
アイコンをクリックし、左側のナビゲーションウィンドウで [ダッシュボード] をクリックします。[ダッシュボード] ページで、[新規] をクリックし、ドロップダウンメニューから [新しいダッシュボード] をクリックします。
[+ 可視化を追加] をクリックします。
[データソースを選択] ページで、カスタムデータソースを選択します。
[パネルの編集] ページで、[クエリ] タブの [A] セクションの [メトリック] フィールドと [ラベルフィルター] フィールドにメトリック名と値を入力し、[クエリを実行] をクリックします。
メトリックのチャートが表示された場合は、Prometheus データソースが追加されています。 チャートが表示されない場合は、Prometheus データソースの追加に失敗しています。 API URL またはトークンが有効かどうか、およびデータソースにモニタリングデータがあるかどうかを確認してください。

ステップ 3:Managed Service for Prometheus のモニタリングデータを取得する
サンプルリクエストは、Managed Service for Prometheus のデータを呼び出す方法を示しています。 HTTP API を使用して Managed Service for Prometheus のデータを取得する方法については、Prometheus HTTP API をご参照ください。
Prometheus V1
GET {HTTP API}/api/v1/query
Accept: application/json
Content-Type: application/json
Authorization: {Token}
{
"query":"arms_prometheus_target_interval_length_seconds_sum",
"time":"1635302655",
"timeout":"1000"
}上記のコードの {HTTP API} を実際の HTTP API URL に置き換え、{Token} を実際の認証トークンに置き換えます。 詳細については、ステップ 1:HTTP API URL を取得する をご参照ください。
Prometheus V2
GET {HTTP API}/api/v1/query
Accept: application/json
Content-Type: application/json
Authorization: Basic <base64Encode(<accessKey:secretKey>)>
{
"query":"arms_prometheus_target_interval_length_seconds_sum",
"time":"1635302655",
"timeout":"1000"
}上記のコードの {HTTP API} を ステップ 1:HTTP API URL を取得する で取得した HTTP API URL に置き換えます。
サンプルレスポンス: