--- slug: /ja/interfaces/prometheus sidebar_position: 19 sidebar_label: Prometheusプロトコル --- # Prometheusプロトコル ## メトリクスの公開 {#expose} :::note ClickHouse Cloudを使用している場合、[Prometheus Integration](/ja/integrations/prometheus)を使用してPrometheusにメトリクスを公開できます。 ::: ClickHouseはその自身のメトリクスをPrometheusからのスクレイピングのために公開できます: ```xml 9363 /metrics true true true true ``` ``セクションを使用して、より詳細なハンドラーを作成できます。 このセクションは[](/ja/interfaces/http)に似ていますが、Prometheusプロトコル用に機能します: ```xml 9363 /metrics expose_metrics true true true true ``` 設定: | 名前 | デフォルト | 説明 | |---|---|---| | `port` | なし | メトリクス公開プロトコルを提供するためのポート。 | | `endpoint` | `/metrics` | Prometheusサーバーによるメトリクスのスクレイピング用HTTPエンドポイント。`/`で始まります。``セクションと併用してはいけません。 | | `url` / `headers` / `method` | なし | リクエストに対する適合ハンドラーを見つけるために使用されるフィルター。[](/ja/interfaces/http)セクションの同じ名前のフィールドに似ています。 | | `metrics` | true | [system.metrics](/ja/operations/system-tables/metrics)テーブルからのメトリクスを公開します。 | | `asynchronous_metrics` | true | [system.asynchronous_metrics](/ja/operations/system-tables/asynchronous_metrics)テーブルから現在のメトリクス値を公開します。 | | `events` | true | [system.events](/ja/operations/system-tables/events)テーブルからのメトリクスを公開します。 | | `errors` | true | 最後のサーバー再起動以降に発生したエラーコードごとのエラー数を公開します。この情報は[system.errors](/ja/operations/system-tables/errors)からも取得できます。 | チェック(`127.0.0.1`をClickHouseサーバーのIPアドレスまたはホスト名に置き換えてください): ```bash curl 127.0.0.1:9363/metrics ``` ## リモート書き込みプロトコル {#remote-write} ClickHouseは[remote-write](https://prometheus.io/docs/specs/remote_write_spec/)プロトコルをサポートしています。 このプロトコルによって受信したデータは、(あらかじめ作成しておく必要がある)[TimeSeries](/ja/engines/table-engines/special/time_series)テーブルに書き込まれます。 ```xml 9363 /write remote_write db_name time_series_table
``` 設定: | 名前 | デフォルト | 説明 | |---|---|---| | `port` | なし | `remote-write`プロトコルを提供するためのポート。 | | `url` / `headers` / `method` | なし | リクエストに対する適合ハンドラーを見つけるために使用されるフィルター。[](/ja/interfaces/http)セクションの同じ名前のフィールドに似ています。 | | `table` | なし | `remote-write`プロトコルで受信したデータを書き込む[TimeSeries](/ja/engines/table-engines/special/time_series)テーブルの名前。この名前にはオプションでデータベース名を含めることができます。 | | `database` | なし | `table`設定で指定されていない場合、`table`設定で指定されたテーブルがあるデータベースの名前。 | ## リモート読み取りプロトコル {#remote-read} ClickHouseは[remote-read](https://prometheus.io/docs/prometheus/latest/querying/remote_read_api/)プロトコルをサポートしています。 このプロトコルを通じて、[TimeSeries](/ja/engines/table-engines/special/time_series)テーブルからデータを読み取り、送信します。 ```xml 9363 /read remote_read db_name time_series_table
``` 設定: | 名前 | デフォルト | 説明 | |---|---|---| | `port` | なし | `remote-read`プロトコルを提供するためのポート。 | | `url` / `headers` / `method` | なし | リクエストに対する適合ハンドラーを見つけるために使用されるフィルター。[](/ja/interfaces/http)セクションの同じ名前のフィールドに似ています。 | | `table` | なし | `remote-read`プロトコルで送信するために読み取る[TimeSeries](/ja/engines/table-engines/special/time_series)テーブルの名前。この名前にはオプションでデータベース名を含めることができます。 | | `database` | なし | `table`設定で指定されていない場合、`table`設定で指定されたテーブルがあるデータベースの名前。 | ## 複数プロトコル用の設定 {#multiple-protocols} 複数のプロトコルを一つの場所に一緒に指定することができます: ```xml 9363 /metrics expose_metrics true true true true /write remote_write db_name.time_series_table
/read remote_read db_name.time_series_table
```