183.md 2.5 KB
Newer Older
Lab机器人's avatar
readme  
Lab机器人 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
# Using Variables

> 原文:[https://docs.gitlab.com/ee/operations/metrics/dashboards/variables.html](https://docs.gitlab.com/ee/operations/metrics/dashboards/variables.html)

*   [Query Variables](#query-variables)
*   [Predefined variables](#predefined-variables)
    *   [__range](#__range)
*   [User-defined variables](#user-defined-variables)
*   [Query Variables from URL](#query-variables-from-url)

# Using Variables[](#using-variables "Permalink")

## Query Variables[](#query-variables "Permalink")

可以使用双花括号来指定变量,例如`"{{ci_environment_slug}}"` (在 GitLab 12.7 中已[添加](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20793) ).

在 GitLab 13.0 中[删除](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/31581)了对`"%{ci_environment_slug}"`格式的支持. 继续使用旧格式的查询将不会显示任何数据.

## Predefined variables[](#predefined-variables "Permalink")

GitLab 在 Prometheus 查询中支持一组有限的[CI 变量](../../../ci/variables/README.html) . 这对于标识特定环境(例如`ci_environment_slug` )特别有用. 支持的变量是:

*   `ci_environment_slug`
*   `kube_namespace`
*   `ci_project_name`
*   `ci_project_namespace`
*   `ci_project_path`
*   `ci_environment_name`
*   `__range`

**注意:** Prometheus 查询的变量必须小写.

### __range[](#__range "Permalink")

`__range`变量在 Prometheus [范围向量选择器中](https://s0prometheus0io.icopy.site/docs/prometheus/latest/querying/basics/)很有用. 它的值是仪表板时间范围内的总秒数. 例如,如果仪表板时间范围设置为 8 小时,则`__range`值为`28800s` .

## User-defined variables[](#user-defined-variables "Permalink")

[可以](../../../operations/metrics/dashboards/yaml.html#templating-templating-properties)在自定义仪表板 YAML 文件中[定义变量](../../../operations/metrics/dashboards/yaml.html#templating-templating-properties) .

## Query Variables from URL[](#query-variables-from-url "Permalink")

在 GitLab 13.0 中[引入](https://gitlab.com/gitlab-org/gitlab/-/issues/214500) .

GitLab 支持通过 URL 参数设置自定义变量. 用双花括号( `{{example}}` )包围变量名称,以在查询中插入变量:

```
avg(sum(container_memory_usage_bytes{container_name!="{{pod}}"}) by (job)) without (job)  /1024/1024/1024' 
```

该查询的 URL 为:

```
http://gitlab.com/<user>/<project>/-/environments/<environment_id>/metrics?dashboard=.gitlab%2Fdashboards%2Fcustom.yml&pod=POD 
```