---
sidebar_label: プラグイン設定
sidebar_position: 3
slug: /ja/integrations/grafana/config
description: GrafanaにおけるClickHouseデータソースプラグインの設定オプション
---
import ConnectionDetails from '@site/docs/ja/_snippets/_gather_your_details_native.md';
# GrafanaでのClickHouseデータソースの設定
設定を変更する最も簡単な方法は、GrafanaのUIでプラグイン設定ページを操作することですが、データソースは[YAMLファイルでプロビジョニング](https://grafana.com/docs/grafana/latest/administration/provisioning/#data-sources)することもできます。
このページでは、ClickHouseプラグインの設定で利用可能なオプションの一覧と、YAMLを使用してデータソースをプロビジョニングする人向けの設定スニペットを紹介します。
全てのオプションの概要については、設定オプションの完全なリストを[こちら](#all-yaml-options)にて確認できます。
## 共通設定
設定画面の例:
共通設定のためのYAML設定例:
```yaml
jsonData:
host: 127.0.0.1 # (必須) サーバーアドレス。
port: 9000 # (必須) サーバーポート。nativeの場合はデフォルトで9440(セキュア)および9000(インセキュア)。HTTPの場合はデフォルトで8443(セキュア)および8123(インセキュア)。
protocol: native # (必須) 接続に使うプロトコル。"native" または "http" に設定可能。
secure: false # 接続がセキュアな場合は true に設定。
username: default # 認証に使用されるユーザー名。
tlsSkipVerify: # true に設定するとTLS検証をスキップします。
tlsAuth: # TLSクライアント認証を有効にするにはtrueに設定。
tlsAuthWithCACert: # CA証明書が提供されている場合はtrueに設定。自己署名のTLS証明書を検証するために必要。
secureJsonData:
password: secureExamplePassword # 認証に使用されるパスワード。
tlsCACert: # TLS CA 証明書
tlsClientCert: # TLS クライアント証明書
tlsClientKey: # TLS クライアントキー
```
UIから設定を保存した際には、`version` プロパティが追加されます。これは、設定が保存されたプラグインのバージョンを示します。
### HTTPプロトコル
HTTPプロトコルを介して接続する場合は、設定が追加で表示されます。
#### HTTPパス
HTTPサーバーが異なるURLパスで公開されている場合、ここにそのパスを追加できます。
```yaml
jsonData:
# 最初のスラッシュを除いた形式
path: additional/path/example
```
#### カスタムHTTPヘッダー
サーバーに送信されるリクエストにカスタムヘッダーを追加できます。
ヘッダーはプレーンテキストまたはセキュア値のいずれかです。
すべてのヘッダーキーはプレーンテキストで保存され、セキュアヘッダー値は(`password`フィールドと同様に)セキュア設定で保存されます。
:::warning HTTP上のセキュア値
セキュアヘッダー値は、設定でセキュアに保存されますが、接続がセキュアではない場合でもHTTPで送信されます。
:::
プレーン/セキュアヘッダーのYAML例:
```yaml
jsonData:
httpHeaders:
- name: X-Example-Plain-Header
value: plain text value
secure: false
- name: X-Example-Secure-Header
# "value" は除外
secure: true
secureJsonData:
secureHttpHeaders.X-Example-Secure-Header: secure header value
```
## 追加設定
これらの追加設定はオプションです。
YAML例:
```yaml
jsonData:
defaultDatabase: default # クエリビルダーでロードされるデフォルトのデータベース。デフォルトは "default"。
defaultTable: # クエリビルダーでロードされるデフォルトのテーブル。
dialTimeout: 10 # サーバーへの接続時のダイアルタイムアウト(秒)。デフォルトは "10"。
queryTimeout: 60 # クエリ実行時のクエリタイムアウト(秒)。デフォルトは60。ユーザーに対する権限が必要です。権限エラーが発生する場合は、"0" に設定して無効化を試みてください。
validateSql: false # true に設定すると、SQLエディタでSQLを検証します。
```
### OpenTelemetry
OpenTelemetry (OTel) はプラグイン内に深く統合されています。
OpenTelemetryデータは、[エクスポータープラグイン](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/exporter/clickhouseexporter)を使用してClickHouseにエクスポートできます。
最善の利用のためには、[ログ](#logs)と[トレース](#traces)の両方のためにOTelを設定することを推奨しています。
[データリンク](./query-builder.md#data-links) を有効にするには、これらのデフォルトを設定する必要があります。この機能は強力な可観測性ワークフローを可能にします。
### ログ
[ログのクエリ構築](./query-builder.md#logs)を高速化するために、デフォルトのデータベース/テーブルと、ログクエリ用のカラムを設定することができます。これにより、クエリビルダーで実行可能なログクエリが事前にロードされ、観察ページでのブラウジングが高速化されます。
OpenTelemetryを使用している場合は、「**Use OTel**」スイッチを有効にし、**デフォルトログテーブル**を`otel_logs`に設定する必要があります。
これにより、選択したOTelスキーマバージョンを使用するためにデフォルトのカラムが自動的にオーバーライドされます。
OpenTelemetryはログには必須ではありませんが、単一のログ/トレースデータセットを使用すると、[データリンク](./query-builder.md#data-links)によるスムーズな可観測性ワークフローを促進します。
ログ設定画面の例:
ログ設定のYAML例:
```yaml
jsonData:
logs:
defaultDatabase: default # デフォルトのログデータベース。
defaultTable: otel_logs # デフォルトのログテーブル。OTelを使用している場合、これは "otel_logs" に設定する必要があります。
otelEnabled: false # OTelが有効である場合にtrueに設定。
otelVersion: latest # 使用されるotelコレクタースキーマバージョン。バージョンはUIで表示されますが、"latest"はプラグイン内で使用可能な最新のバージョンを使用します。
# 新しいログクエリを開く際に選択されるデフォルトのカラム。OTelが有効である場合は無視されます。
timeColumn: # ログの主な時間カラム。
logLevelColumn: # ログのレベル/シビリティ。値は通常 "INFO"、"error"、または "Debug" のようになります。
logMessageColumn: # ログのメッセージ/コンテンツ。
```
### トレース
[トレースのクエリ構築](./query-builder.md#traces)を高速化するために、デフォルトのデータベース/テーブルと、トレースクエリ用のカラムを設定することができます。これにより、クエリビルダーで実行可能なトレース検索クエリが事前にロードされ、観察ページでのブラウジングが高速化されます。
OpenTelemetryを使用している場合は、「**Use OTel**」スイッチを有効にし、**デフォルトトレーステーブル**を`otel_traces`に設定する必要があります。
これにより、選択したOTelスキーマバージョンを使用するためにデフォルトのカラムが自動的にオーバーライドされます。
OpenTelemetryは必須ではありませんが、この機能はトレースにそのスキーマを使用するのが最適です。
トレース設定画面の例:
トレース設定のYAML例:
```yaml
jsonData:
traces:
defaultDatabase: default # デフォルトのトレースデータベース。
defaultTable: otel_traces # デフォルトのトレーステーブル。OTelを使用している場合、これは "otel_traces" に設定する必要があります。
otelEnabled: false # OTelが有効である場合にtrueに設定。
otelVersion: latest # 使用されるotelコレクタースキーマバージョン。バージョンはUIで表示されますが、"latest"はプラグイン内で使用可能な最新のバージョンを使用します。
# 新しいトレースクエリを開くときに選択されるデフォルトのカラム。OTelが有効の場合は無視されます。
traceIdColumn: # トレースIDカラム。
spanIdColumn: # スパンIDカラム。
operationNameColumn: # オペレーション名カラム。
parentSpanIdColumn: # 親スパンIDカラム。
serviceNameColumn: # サービス名カラム。
durationTimeColumn: # 継続時間カラム。
durationUnitColumn: