メトリクス・ダッシュボード用のテンプレート変数

GitLab 13.0から導入されました

テンプレート変数を使用すると、メトリクス・ダッシュボードをより多機能にすることができます。

templatingダッシュボード YAMLのトップレベルのキーです。templatingの下のvariables キーで変数を定義します。variables キーの variables値はvariables ハッシュでなければならず、下のそれぞれのキーは variablesダッシュボードのテンプレート変数を定義し、英数字とアンダースコア文字を含むことができます。

変数の使用」で説明した構文を使用して、同じダッシュボードの Prometheus クエリで変数を使用できます。

text 変数型

警告:この変数タイプは_アルファ_機能であり、予告なく変更されることがあります!

ダッシュボードのYAMLで定義されたそれぞれのtext 変数に対して、ダッシュボードのUIにフリーテキストボックスが用意され、それぞれの変数の値を入力することができます。

text 変数型はシンプルな構文と完全な構文をサポートしています。

簡単な構文

この例では、variable1という変数を作成し、デフォルト値をdefault valueとします:

templating:
  variables:
    variable1: 'default value'     # `text` type variable with `default value` as its default.

完全な構文

この例では、variable1という変数が作成され、デフォルト値はdefaultです。UI上のテキストボックスのラベルは、label キーの値になります:

templating:
  variables:
    variable1:                       # The variable name that can be used in queries.
      label: 'Variable 1'            # (Optional) label that will appear in the UI for this text box.
      type: text
      options:
        default_value: 'default'     # (Optional) default value.

custom 変数型

警告:この変数タイプは_アルファ_機能であり、予告なく変更されることがあります!

ダッシュボードのYAMLで定義されたそれぞれのcustom 変数はダッシュボードのUIにドロップダウンセレクタを作成し、それぞれの変数の値を選択できるようにします。

custom 変数型はシンプルな構文と完全な構文をサポートしています。

簡単な構文

この例では、variable1という変数を作成し、デフォルト値をvalue1. ダッシュボードのUIでは value1value2value3value1選択肢とするドロップダウンが表示さ value1れます。

templating:
  variables:
    variable1: ['value1', 'value2', 'value3']

完全な構文

この例では、variable1という変数を作成し、デフォルト値をvalue_option_2とします。UI上のテキストボックスのラベルは、label キーの値になります。ダッシュボードUIには、Option 1Option 2を選択肢とするドロップダウンが表示されます。

ドロップダウンからOption 1 を選択すると、変数はvalue option 1に置き換えられます。 同様に、Option 2を選択すると、変数はvalue_option_2に置き換えられます:

templating:
  variables:
    variable1:                           # The variable name that can be used in queries.
      label: 'Variable 1'                # (Optional) label that will appear in the UI for this dropdown.
      type: custom
      options:
        values:
          - value: 'value option 1'        # The value that will replace the variable in queries.
            text: 'Option 1'               # (Optional) Text that will appear in the UI dropdown.
          - value: 'value_option_2'
            text: 'Option 2'
            default: true                  # (Optional) This option should be the default value of this variable.

metric_label_values 変数型

警告:この変数タイプは_アルファ_機能であり、予告なく変更されることがあります!

完全な構文

この例では、variable2という変数を作成します。 ドロップダウンの値は、up{env="production"}で記述された Prometheus シリーズのbackend ラベルのすべての異なる値になります。

templating:
  variables:
    variable2:                           # The variable name that can be interpolated in queries.
      label: 'Variable 2'                # (Optional) label that will appear in the UI for this dropdown.
      type: metric_label_values
      options:
        series_selector: 'up{env="production"}'
        label: 'backend'