メトリクス・ダッシュボード用のテンプレート変数
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では value1
、value2
とvalue3
をvalue1
選択肢とするドロップダウンが表示さ value1
れます。
templating:
variables:
variable1: ['value1', 'value2', 'value3']
完全な構文
この例では、variable1
という変数を作成し、デフォルト値をvalue_option_2
とします。UI上のテキストボックスのラベルは、label
キーの値になります。ダッシュボードUIには、Option 1
とOption 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'