> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudthinker.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Prometheus

> 読み取り専用のPromQLクエリ・メトリクス探索・ターゲットヘルス・アラート検査のためにPrometheus、Thanos、VictoriaMetrics、またはGrafana Cloudを接続します

Prometheus互換の監視バックエンドを接続することで、CloudThinkerエージェントがPromQLクエリを実行し、メトリクスとラベルを探索し、スクレイプターゲットのヘルスを検査し、アクティブなアラートを相関付けられるようになります。すべての操作は読み取り専用です。

<Info>
  このコネクターは、標準のPrometheus HTTP APIを使用するすべてのバックエンドで動作します: セルフホスト **Prometheus**、**Thanos**、**VictoriaMetrics**、および **Grafana Cloud**。認証は **None**、**Bearer Token**、**Basic Auth** をサポートします。
</Info>

***

## 対応プラットフォーム

| プラットフォーム            | サポート                      | 一般的な認証               |
| ------------------- | ------------------------- | -------------------- |
| **Prometheus**      | セルフホスト、最新リリース全般           | NoneまたはBearer        |
| **Thanos**          | 認証プロキシ背後のQuerier          | None、Bearer、またはBasic |
| **VictoriaMetrics** | シングルノードおよびクラスター           | NoneまたはBasic         |
| **Grafana Cloud**   | Prometheus / Mimirエンドポイント | Basic                |

<Note>
  マネージドのMimirベースエンドポイント（Grafana Cloud）では、`/api/v1/targets`、`/rules`、`/alerts` パスが公開されておらず404を返します。これは想定通りの動作です。クエリAPI（インスタントクエリ、レンジクエリ、ラベル、メタデータ）は正常に動作します。
</Note>

***

## 前提条件

* CloudThinkerからHTTPS経由で到達可能な **Prometheus互換エンドポイント** — セルフホストPrometheus、Thanos、VictoriaMetrics、またはGrafana Cloud。
* エンドポイントが認証を必要とする場合の認証情報: bearerトークン（Bearer Tokenモード）またはユーザー名とパスワード（Basic Authモード）。
* **Grafana Cloud** の場合、数値のインスタンスIDと **metrics:read** スコープのアクセスポリシートークン。

***

## 認証モードの選択

エンドポイントの公開方法に合ったモードを選択してください:

| モード              | 使用する場合                                                       | フィールド               |
| ---------------- | ------------------------------------------------------------ | ------------------- |
| **None**         | オープンまたはネットワーク制限付きエンドポイント（プライベートネットワーク内のセルフホストPrometheus）     | URLのみ               |
| **Bearer Token** | `Authorization: Bearer <token>` を期待するプロキシまたはゲートウェイ背後のエンドポイント | URL + トークン          |
| **Basic Auth**   | Grafana Cloud、認証プロキシ背後のThanos、またはユーザー名/パスワードのVictoriaMetrics | URL + ユーザー名 + パスワード |

<Tip>
  **Grafana Cloud** の場合、ユーザー名は数値のインスタンスIDで、パスワードはmetricsの読み取りスコープを持つアクセスポリシートークンです。
</Tip>

***

## セットアップ

<Steps>
  <Step title="PrometheusのURLを確認">
    Prometheus HTTP APIのベースURLを特定します（例: `https://prometheus.your-domain.com` またはGrafana CloudのPrometheusクエリエンドポイント）。CloudThinkerは標準の `/api/v1/...` パスを自動的に付加します。
  </Step>

  <Step title="認証情報を準備（必要な場合）">
    * **None** — 準備不要。エンドポイントは認証なしで到達可能です。
    * **Bearer Token** — プロキシまたはゲートウェイが期待するbearerトークンを取得します。
    * **Basic Auth** — ユーザー名とパスワードを取得します（Grafana Cloudの場合は数値のインスタンスIDとアクセスポリシートークン）。
  </Step>

  <Step title="CloudThinkerで接続を追加">
    **Connections → Prometheus** に移動し、次の情報を入力します:

    * **PROMETHEUS\_URL**: エンドポイント（例: `https://prometheus.your-domain.com`）
    * **PROMETHEUS\_AUTH\_TYPE**: **None**、**Bearer Token**、または **Basic Auth** を選択

    選択に応じて認証情報フィールドが表示されます:

    * **Bearer Token** → **PROMETHEUS\_TOKEN**
    * **Basic Auth** → **PROMETHEUS\_USERNAME** と **PROMETHEUS\_PASSWORD**

    **Connect** をクリックします。CloudThinkerがエンドポイントを検証し、**Connected** ステータスを表示します。
  </Step>
</Steps>

***

## 接続の詳細

| フィールド                      | 説明                                              | 例                                    |
| -------------------------- | ----------------------------------------------- | ------------------------------------ |
| **PROMETHEUS\_URL**        | Prometheus HTTP APIのベースURL                      | `https://prometheus.your-domain.com` |
| **PROMETHEUS\_AUTH\_TYPE** | 認証モード: `none`、`bearer`、または `basic`              | `basic`                              |
| **PROMETHEUS\_TOKEN**      | Bearerトークン（Bearer Tokenモードのみ）                   | `eyJhbGci...`                        |
| **PROMETHEUS\_USERNAME**   | ユーザー名、またはGrafana Cloudの数値インスタンスID（Basic Authのみ） | `1234567`                            |
| **PROMETHEUS\_PASSWORD**   | パスワードまたはアクセスポリシートークン（Basic Authのみ）              | `glc_xxxxx...`                       |

***

## 必要な権限

Prometheusコネクターは**読み取り専用**です。エージェントはクエリと検査を行いますが、監視バックエンドへの書き込みは行いません。

* **Grafana Cloud** の場合、**metrics:read** スコープのみのアクセスポリシートークンを作成してください。
* 保護されたエンドポイントの場合、認証情報がクエリ、ラベル、ターゲット、ルール、アラートAPIパスに到達できることを確認してください。

<Tip>
  Grafana Cloudでは、アクセスポリシートークンを `metrics:read` のみにスコープしてください。CloudThinkerに必要なスコープはそれだけです。
</Tip>

***

## エージェント機能

Prometheusコネクターは読み取り専用です。エージェントはクエリと検査を行いますが、監視バックエンドを変更することはありません。

| 機能            | エージェントができること                             |
| ------------- | ---------------------------------------- |
| **インスタントクエリ** | 単一時点のPromQL式を実行                          |
| **レンジクエリ**    | ステップ間隔を指定した時間ウィンドウでPromQL式を実行            |
| **メトリクス探索**   | プレフィックスでフィルタリングしながら利用可能なメトリクス名を一覧表示      |
| **ラベル列挙**     | ラベル名を一覧表示し、メトリクスのスライス次元を検査               |
| **ターゲットヘルス**  | スクレイプターゲットを検査し、ダウンまたは不健全なものを特定           |
| **アラート検査**    | アクティブなアラートを一覧表示し、設定されたアラートルールを確認         |
| **ヘルスプローブ**   | ユニバーサルな `up` クエリを実行してバックエンドとターゲットの到達性を確認 |

### 接続を確認

```text theme={null}
@alex run the Prometheus health probe and confirm all scrape targets are reachable
```

### プロンプト例

```text theme={null}
@alex query node_cpu utilization across the cluster for the last hour and #report anything sustained above 85%
@kai list scrape targets that are currently down and #report which jobs they belong to
@alex show all active alerts and #recommend which to investigate first
```

<Note>
  Prometheusにはラベル**値**を取得するツールがありません。ラベル列挙はラベル**名**のみを返します。エージェントが正確なPromQLセレクターを構築できるよう、メトリクス名と関心のあるラベルを明示してください。
</Note>

***

## トラブルシューティング

<Accordion title="401 Unauthorizedで接続またはクエリが失敗">
  * **PROMETHEUS\_AUTH\_TYPE** がエンドポイントの期待する方式と一致しているか確認してください。
  * **Bearer** の場合、トークンが最新で失効していないことを確認してください。
  * **Basic** の場合、ユーザー名/パスワードを確認してください。Grafana Cloudでは、ユーザー名が数値のインスタンスIDで、パスワードがアクセスポリシートークンであることを確認してください。
</Accordion>

<Accordion title="ターゲット、ルール、アラートが404を返す">
  * マネージドのMimirベースエンドポイント（Grafana Cloud）では想定される動作です。これらのパスは公開されていません。
  * クエリAPI（インスタント、レンジ、ラベル、メタデータ）は引き続き動作します。ターゲット/ルール検査の代わりにクエリを使用してください。
</Accordion>

<Accordion title="エンドポイントへの接続が失敗">
  * **PROMETHEUS\_URL** がCloudThinkerからHTTPS経由で到達可能であることを確認してください。
  * セルフホストまたはネットワーク制限付きエンドポイントの場合、CloudThinkerからのネットワークパスがあることを確認してください。
  * URLから末尾の `/api/v1` を削除してください。ベースURLのみを入力してください。
</Accordion>

<Accordion title="クエリが空の結果を返す">
  * ラベルでスライスする前に、探索クエリでメトリクスの存在を確認してください。
  * 時間ウィンドウを広げてください。リクエストした範囲にサンプルがない可能性があります。
</Accordion>

***

## セキュリティ

* **最小権限** — エージェントがユースケースに必要な権限のみを付与します。まず読み取り専用から始め、後から拡張してください。
* **デフォルトで読み取り専用** — エージェントにこの接続で変更を行わせる場合を除き、読み取り専用の認証情報を使用してください。
* **認証情報のローテーション** — 通常のスケジュールに従ってキーとトークンをローテーションしてください。接続を更新すると、CloudThinker が新しい値を自動的に取得します。
* **オフボーディング時に失効** — 接続を削除するか、チームメンバーが退職する際には、プロバイダー側で認証情報を無効化してください。

- **設計上読み取り専用** — コネクターは監視バックエンドへの書き込みを行いません。書き込み権限は不要です
- **最小権限の認証情報** — Grafana Cloudでは、アクセスポリシートークンをメトリクス読み取りのみにスコープしてください

***

## 関連情報

<CardGroup cols={2}>
  <Card title="Grafana 接続" icon="https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/grafana.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=c1329049025cd3c3a0909b400baef7be" href="/ja/guide/connections/grafana" width="24" height="24" data-path="images/icons/grafana.svg">
    ダッシュボードと統合オブザーバビリティ
  </Card>

  <Card title="Datadog 接続" icon="https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/datadog.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=e8382167f2a1eb1e00971b5f4d703d48" href="/ja/guide/connections/datadog" width="24" height="24" data-path="images/icons/datadog.svg">
    ログ検索、メトリクス、インフラストラクチャ監視
  </Card>
</CardGroup>
