可変タイプ - Amazon Managed Grafana

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

可変タイプ

このドキュメントトピックは、Grafana バージョン 8.x をサポートする Grafana ワークスペース向けに設計されています。

Grafana バージョン 10.x をサポートする Grafana ワークスペースについては、「」を参照してくださいGrafana バージョン 10 での作業

Grafana バージョン 9.x をサポートする Grafana ワークスペースについては、「」を参照してくださいGrafana バージョン 9 での作業

Grafana はいくつかのタイプの変数を使用します。

変数タイプ 説明
Query メトリクス名、サーバー名、センサー IDs、データセンターなど、クエリによって生成された値のリスト。詳細については、「クエリ変数の追加」を参照してください。
カスタム カンマ区切りリストを使用して変数オプションを手動で定義します。詳細については、「カスタム変数の追加」を参照してください。
[テキストボックス] オプションのデフォルト値を使用してテキスト入力フィールドを表示します。詳細については、「テキストボックス変数の追加」を参照してください。
定数 非表示の定数を定義します。詳細については、「定数変数の追加」を参照してください。
データソース ダッシュボード全体のデータソースをすばやく変更します。詳細については、「データソース変数の追加」を参照してください。
[間隔] 間隔変数は時間範囲を表します。詳細については、「間隔変数の追加」を参照してください。
アドホックフィルター データソースのすべてのメトリクスクエリに自動的に追加されるキー/値フィルター (InfluxDBPrometheus、および OpenSearch のみ)。詳細については、「アドホックフィルターの追加」を参照してください。
グローバル変数 クエリエディタの式で使用できる組み込み変数。詳細については、「グローバル変数」を参照してください。
連鎖変数 変数クエリには、他の変数を含めることができます。詳細については、「連鎖変数」を参照してください。

クエリ変数の追加

クエリ変数を使用すると、メトリクス名、タグ値、またはキーのリストを返すデータソースクエリを作成できます。例えば、クエリ変数は、サーバー名、センサー IDs、またはデータセンターのリストを返す場合があります。変数値は、データソースクエリでオプションを動的にフェッチすると変化します。

クエリ式には、他の変数への参照を含めることができ、実際にはリンクされた変数を作成できます。Grafana はこれを検出し、リンクされた変数のいずれかが変更されると変数を自動的に更新します。

クエリ式

クエリ式はデータソースごとに異なります。詳細については、「」のデータソースのドキュメントを参照してくださいデータソースに接続する

一般的なオプションの入力

クエリ変数の一般的なオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで、クエリ を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリストの表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 選択なし (空白) — 変数ドロップダウンリストには変数またはラベル値が表示されます。これがデフォルトです。

    • ラベル — 変数ドロップダウンリストには、選択した変数値と下矢印のみが表示されます。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。

クエリオプションの入力

クエリ変数のクエリオプションを入力するには
  1. データソースリストで、クエリのターゲットデータソースを選択します。データソースの詳細については、「」を参照してくださいデータソースに接続する

  2. 更新リストで、変数がオプションを更新するタイミングを選択します。

    • Never - 変数クエリをキャッシュし、値は更新されません。これは、値が変更されない場合は問題ありませんが、動的で、大きく変更する場合は問題になります。

    • ダッシュボードロード時 - ダッシュボードがロードされるたびにデータソースをクエリします。これにより、ダッシュボードを初期化する前に変数クエリを完了する必要があるため、ダッシュボードのロードが遅くなります。

    • 時間範囲変更時 - ダッシュボードの時間範囲が変更されたときにデータソースをクエリします。このオプションは、変数オプションクエリに時間範囲フィルターが含まれているか、ダッシュボードの時間範囲に依存している場合にのみ使用します。

  3. クエリフィールドにクエリを入力します。

    • クエリフィールドはデータソースによって異なります。一部のデータソースにはカスタムクエリエディタがあります。

    • 1 つの入力フィールドクエリエディタでより多くのスペースが必要な場合は、フィールドの右下隅にある行を一時停止し、下にドラッグして展開します。

  4. (オプション) 正規表現 フィールドに正規表現式を入力して、データソースクエリによって返される名前の特定部分をフィルタリングまたはキャプチャします。例については、「正規表現を使用した変数のフィルタリング」を参照してください。

  5. ソートリストで、ドロップダウンリストに表示される値のソート順を選択します。デフォルトのオプション Disabled は、データソースクエリによって返されるオプションの順序が使用されることを意味します。

  6. (オプション) 選択オプション を入力します。詳細については、「変数選択オプションの入力」を参照してください。

  7. 値 のプレビューでは、Grafana ワークスペースに現在の変数値のリストが表示されます。これらを確認して、期待どおりであることを確認します。

  8. 追加 を選択して、変数をダッシュボードに追加します。

カスタム変数の追加

変更されない値にはカスタム変数を使用します。これは、数値、文字列、またはその他の変数である場合があります。

例えば、変更されないサーバー名やリージョン名がある場合は、クエリ変数ではなくカスタム変数として作成できます。これらは変更されないため、他のクエリ変数ではなく連鎖変数で使用できます。これにより、連鎖変数が更新されたときに Grafana が送信する必要があるクエリの数が減少します。連鎖変数の詳細については、「」を参照してください連鎖変数

一般的なオプションの入力

カスタム変数のクエリオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで、カスタム を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリストの表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 選択なし (空白) — 変数ドロップダウンリストには変数またはラベル値が表示されます。これがデフォルトです。

    • ラベル - 変数リストドロップダウンには、選択した変数値と下矢印のみが表示されます。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。

カスタムオプションの入力

カスタム変数のカスタムオプションを入力するには
  1. カンマで区切られた値 リストで、この変数の値をカンマ区切りリストに入力します。数字、文字列、その他の変数、またはコロンで区切られたキーと値のペアを含めることができます。

  2. (オプション) 選択オプション を入力します。詳細については、「変数選択オプションの入力」を参照してください。

  3. 値 のプレビューでは、Grafana ワークスペースに現在の変数値のリストが表示されます。これらを確認して、期待どおりであることを確認します。

  4. 追加 を選択して、変数をダッシュボードに追加します。

テキストボックス変数の追加

テキストボックス変数には、オプションのデフォルト値を含むテキスト入力フィールドが表示されます。任意の値を入力できるため、これは最も柔軟な変数です。カーディナリティの高いメトリクスがある場合、またはダッシュボード内の複数のパネルを同時に更新する場合は、このタイプの変数を使用します。

一般的なオプションの入力

テキストボックス変数の一般的なオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで、テキストボックス を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリストの表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 選択なし (空白) – 変数ドロップダウンリストには変数またはラベル値が表示されます。これがデフォルトです。

    • ラベル — 変数ドロップダウンリストには、選択した変数値と下矢印のみが表示されます。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。

テキストオプションの入力

テキストボックス変数のテキストオプションを入力するには
  1. (オプション) デフォルト値 フィールドで、変数のデフォルト値を選択します。このフィールドに何も入力しないと、テキストを入力できる空のテキストボックスが Grafana に表示されます。

  2. 値 のプレビューでは、Grafana は現在の変数値のリストを表示します。これらを確認して、期待どおりであることを確認します。

  3. 追加 を選択して、変数をダッシュボードに追加します。

定数変数の追加

非表示の定数を定義するには、定数変数を使用します。定数変数は、共有するダッシュボードのメトリクスパスプレフィックスに役立ちます。ダッシュボードをエクスポートすると、定数変数がインポートオプションに変換されます。

定数変数には柔軟性がありません。各定数変数は 1 つの値のみを保持します。更新するには、変数設定を更新する必要があります。

定数変数は、クエリに含める必要があるが、すべてのクエリで再入力したくない複雑な値がある場合に便利です。例えば、 というサーバーパスがある場合i-0b6a61efe2ab843gg、それを という変数に置き換えることができます$path_gg

一般的なオプションの入力

定数変数の一般的なオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで定数 を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリストの表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。これがデフォルトです。

    • 選択なし (空白) – 変数ドロップダウンリストには変数またはラベル値が表示されます。

    • ラベル — 変数ドロップダウンリストには、選択した変数値と下矢印のみが表示されます。

定数オプションの入力

定数変数の定数オプションを入力するには
  1. フィールドに、変数値を入力します。文字、数字、記号を入力できます。高度な変数形式オプションを使用する場合は、ワイルドカードを使用することもできます。詳細については、「高度な変数形式のオプション」を参照してください。

  2. 値 のプレビューでは、Grafana ワークスペースに現在の変数値が表示されます。これを確認して、期待どおりであることを確認します。

  3. 追加 を選択して、変数をダッシュボードに追加します。

データソース変数の追加

ダッシュボード全体のデータソースをすばやく変更するには、データソース変数を使用できます。これらは、データソースのインスタンスが複数ある場合に便利です。場合によっては、異なる環境にもあります。

一般的なオプションの入力

データソース変数の一般的なオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで、データソース を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリストの表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 選択なし (空白) — 変数ドロップダウンリストには変数またはラベル値が表示されます。これがデフォルトです。

    • ラベル — 変数ドロップダウンリストには、選択した変数値と下矢印のみが表示されます。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。

データソースオプションの入力

データソース変数のデータソースオプションを入力するには
  1. Type リストで、変数のターゲットデータソースを選択します。データソースの詳細については、「」を参照してくださいデータソースに接続する

  2. (オプション) インスタンス名フィルター で、データソースインスタンスが選択できる正規表現フィルターを変数値のドロップダウンリストから入力します。このフィールドを空のままにして、すべてのインスタンスを表示します。

  3. (オプション) 選択オプション を入力します。詳細については、「変数選択オプションの入力」を参照してください。

  4. 値 のプレビューでは、Grafana は現在の変数値のリストを表示します。これらを確認して、期待どおりであることを確認します。

  5. 追加 を選択して、変数をダッシュボードに追加します。

間隔変数の追加

間隔変数を使用して、1m1h、 などの時間範囲を表します1d。これらはダッシュボード全体の group-by-time コマンドと考えることができます。間隔変数は、視覚化でのデータのグループ化方法を変更します。Auto オプションを使用して、時間範囲ごとに設定された数のデータポイントを返すこともできます。

間隔変数は、時間 (InfluxDB の場合)、日付ヒストグラム間隔 ( の場合)、または要約関数パラメータ (Graphite の場合 OpenSearch) でグループ化するパラメータとして使用できます。

一般的なオプションの入力

間隔変数の一般的なオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで、間隔 を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリスト の表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 選択なし (空白) – 変数ドロップダウンリストには変数またはラベル値が表示されます。これがデフォルトです。

    • ラベル — 変数ドロップダウンリストには、選択した変数値と下矢印のみが表示されます。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。

間隔オプションの入力

間隔変数の間隔オプションを入力するには
  1. フィールドに、変数のドロップダウンリストに表示する時間間隔を入力します。次の時間単位がサポートされています: s (seconds)m (minutes)h (hours)d (days)、、w (weeks)M (months)、および y (years)。デフォルト値 を承諾または編集することもできます1m,10m,30m,1h,6h,12h,1d,7d,14d,30d

  2. (オプション) オプションをリストに追加する場合は、自動autoオプションをオンにします。このオプションを使用して、現在の時間範囲を分割して現在のauto時間範囲を計算する回数を指定します。オンにすると、さらに 2 つのオプションが表示されます。

    • ステップ数最大データポイントクエリオプションと同様に、現在の時間範囲を分割して値を計算する回数を選択します。例えば、現在の表示時間範囲が 30 分の場合、auto間隔はデータを 30 の 1 分単位でグループ化します。デフォルト値は 30 ステップです。

    • 最小間隔 — ステップカウント間隔が時間を割かない最小しきい値。30 分の例を続行するには、最小間隔が に設定されている場合2m、Grafana はデータを 15 の 2 分単位でグループ化します。

  3. 値 のプレビューでは、Grafana は現在の変数値のリストを表示します。これらを確認して、期待どおりであることを確認します。

  4. 追加 を選択して、変数をダッシュボードに追加します。

間隔変数の例

Graphite 関数myintervalで テンプレート変数を使用する例:

summarize($myinterval, sum, false)

より複雑な Graphite の例:

groupByNode(summarize(movingAverage(apps.$app.$server.counters.requests.count, 5), '$interval', 'sum', false), 2, 'sum')

アドホックフィルターの追加

1 回限りのフィルターまたはアドホックフィルターを使用して、指定したデータソースを使用するすべてのメトリクスクエリに自動的に追加されるキー/値フィルターを追加できます。他の変数とは異なり、クエリでは 1 回限りのフィルターを使用しません。代わりに、それらを使用して既存のクエリのフィルターを記述します。

注記

注: 1 回限りまたはアドホックのフィルター変数は、InfluxDBPrometheus、および OpenSearch データソースでのみ機能します。

一般的なオプションの入力

アドホックフィルターの一般的なオプションを入力するには
  1. 変数を作成するダッシュボードに移動し、ページの上部にあるダッシュボード設定 (歯車) アイコンを選択します。

  2. 変数 タブで、新規 を選択します。

  3. 変数の名前を入力します。

  4. タイプ リストで、アドホックフィルター を選択します。

  5. (オプション) ラベル に、変数ドロップダウンリストの表示名を入力します。表示名を入力しない場合、ドロップダウンラベルは変数名になります。

  6. 非表示オプションを選択します。

    • 選択なし (空白) – 変数ドロップダウンリストには変数またはラベル値が表示されます。これがデフォルトです。

    • ラベル — 変数ドロップダウンリストには、選択した変数値と下矢印のみが表示されます。

    • 変数 – ダッシュボードには変数ドロップダウンリストが表示されません。

オプションの入力

アドホックフィルターのオプションを入力するには
  1. データソースリストで、ターゲットデータソースを選択します。データソースの詳細については、「」を参照してくださいデータソースに接続する

  2. 追加 を選択して、変数をダッシュボードに追加します。

アドホックフィルターの作成

アドホックフィルターは、利用可能な最も複雑で柔軟な変数オプションの 1 つです。この変数は、変数オプションの通常のリストの代わりに、ダッシュボード全体のアドホッククエリの構築を可能にします。この方法で適用したフィルターは、ダッシュボード上のすべてのパネルに適用されます。

連鎖変数

連鎖変数 は、リンクされた変数 またはネストされた変数 とも呼ばれ、変数クエリに 1 つ以上の他の変数を含むクエリ変数です。このセクションでは、連鎖変数の仕組みについて説明し、連鎖変数を使用するダッシュボードの例へのリンクを提供します。

連鎖変数クエリはデータソースごとに異なりますが、前提はすべての で同じです。連鎖変数クエリは、それらをサポートする任意のデータソースで使用できます。

5 レベルまたは 10 レベルの複雑なリンクされたテンプレート化されたダッシュボードを構築できます。技術的には、どれだけ深く、複雑に行けるかに制限はありませんが、リンクが多いほど、クエリの負荷が大きくなります。

ベストプラクティスとヒント

以下のプラクティスにより、ダッシュボードと変数の使用が容易になります。

新しい連鎖変数の作成

  • 変数を連鎖すると、親子の依存関係が作成されます。これらは、はしごまたは木として構想できます。

  • 新しい連鎖変数を作成する最も簡単な方法は、新しい変数のベースとなる変数をコピーすることです。変数リストで、変数エントリの右側にある重複変数アイコンを選択してコピーを作成します。その後、親変数のクエリに を追加できます。

  • この方法で作成した新しい連鎖変数がリストの下部に表示されます。リストに論理的な順序を付けるには、変数をリスト内の別の位置にドラッグします。

可変順序

ダッシュボード可変リストの可変の順序を変更するには、各エントリの右側にある上矢印と下矢印を選択します。Grafana ワークスペースには、このリストに従って左から右に変数ドロップダウンリストが一覧表示され、左端のリストの上部に変数が表示されます。

  • 子変数の前に、依存関係のない変数をリストします。

  • 各変数は、依存している変数に従う必要があります。

  • UI は、依存関係を持つ変数を示しません。エンドユーザー (および自分自身) に対してより明確にするために、変数を論理的な順序で一覧表示します。

複雑さに関する考慮事項

変数の依存関係のレイヤーが多いほど、変数を変更した後にダッシュボードを更新するのに時間がかかります。

例えば、リンクされた一連の 4 つの変数 (国、地域、サーバー、メトリクス) があり、ルート変数の値 (国) を変更する場合、Grafana ワークスペースはダッシュボードの視覚化を更新する前に、すべての依存変数に対してクエリを実行する必要があります。

グローバル変数

Grafana には、クエリエディタの式で使用できるグローバル組み込み変数があります。このトピックでは、それらをアルファベット順にリストし、定義します。これらの変数は、クエリ、ダッシュボードリンク、パネルリンク、およびデータリンクに役立ちます。

$__ダッシュボード

この変数は、現在のダッシュボードの名前です。

$__from および $__to

Grafana には、 $__fromと の 2 つの時間範囲変数が組み込まれています$__to。現在、デフォルトでは常にエポックミリ秒として補間されますが、日付の書式を制御できます。

構文 結果の例 説明
${__from} 1594671549254 Unix ミリ秒エポック
${__from:date} 2020-07-13T20:19:09.254Z 引数なし、デフォルトは ISO 8601/RFC 3339
${__from:date:iso} 2020-07-13T20:19:09.254Z ISO 8601/RFC 3339
${__from:date:seconds} 1594671549 Unix 秒エポック
${__from:date:YYYY-MM} 2020-07 任意のカスタムデータ形式。詳細については、「 の表示」を参照してください。

上記の構文は ${__to}でも機能します。

この変数は URLsでも使用できます。例えば、6 時間前から現在までの時間範囲を表示するダッシュボードにエンドユーザーを送信するには、https://play.grafana.org/d/000000012/grafana-play-home?viewPanel =2&orgId =1?from=now-6h&to=now という URL を使用します。

$__ 間隔

$__interval 変数は、時間別にグループ化するパラメータ (InfluxDB 、Myself、Postgres、MSSQL の場合)、日付ヒストグラム間隔 ( の場合)、または要約関数パラメータ (Graphite の場合 OpenSearch) として使用できます。

Grafana ワークスペースは、クエリで時間別にグループ化するために使用できる間隔を自動的に計算します。グラフに表示されるデータポイントよりも多くのデータポイントがある場合、間隔を長くしてグループ化することで、クエリをより効率的に行うことができます。例えば、3 か月のデータを見ると、1 日でグループ化するのが 10 秒でグループ化するよりも効率的です。グラフは同じように見え、クエリは速くなります。$__interval は、時間範囲とグラフの幅 (ピクセル数) を使用して計算されます。

概算計算: (from - to) / resolution

例えば、時間範囲が 1 時間でグラフが全画面表示の場合、間隔は に計算され、2mポイントは 2 分間隔でグループ化されます。時間範囲が 6 か月で、グラフが全画面表示の場合、間隔は 1d (1 日) になることがあります。ポイントは日別にグループ化されます。

InfluxDB データソースでは、レガシー変数 は同じ変数$intervalです。代わりに $__interval を使用します。

InfluxDB と OpenSearch データソースには、間隔をハードコードしたり、>構文 -> を使用して$__interval変数の最小制限を設定したりするために使用されるGroup by time intervalフィールドがあります>10m

$__interval_ms

この変数はミリ秒単位の$__interval変数であり、時間間隔形式の文字列ではありません。例えば、 $__intervalが の場合20m$__interval_msは です1200000

$__name

この変数は Singlestat パネルでのみ使用でき、オプションタブのプレフィックスまたはサフィックスフィールドで使用できます。変数はシリーズ名またはエイリアスに置き換えられます。

$__org

この変数は、現在の組織の ID です。変数は現在の組織の名前${__org.name}です。

$__user

変数は現在のユーザーの ID ${__user.id}です。変数は、現在のユーザーのログインハンドル${__user.login}です。変数は、現在のユーザーの E メール${__user.email}です。

$__range

この変数は現在、Prometheus データソースでのみサポートされています。この変数は、現在のダッシュボードの範囲を表します。これは によって計算されますto - from。ミリ秒と秒の表現は $__range_msおよび と呼ばれています$__range_s

$timeFilter または $__timeFilter

$timeFilter 変数は、現在選択されている時間範囲を式として返します。例えば、時間範囲間隔Last 7 days式は ですtime > now() - 7d

この変数は、次のようないくつかの場所で使用されます。

  • InfluxDB データソースの WHERE 句。Grafana は、クエリエディタモードで InfluxDB クエリに自動的に追加します。 テキストエディタモードで手動で追加できます: WHERE $timeFilter

  • Azure Monitor データソースに分析クエリをログ記録します。

  • MySQL 、Postgres、MSSQL の SQL クエリ。

  • $__timeFilter 変数は MySQL データソースで使用されます。