当前位置: 首页>前端>正文

grafana配置echarts grafana配置es数据源


文章目录

  • 1. 什么是变量?
  • 2. 使用
  • 3. 添加变量
  • 4. 全球内置变量
  • 5.Repeating Panels(重复面板)
  • 6. Ad hoc filters
  • 项目推荐


变量允许更多的交互式和动态仪表板。您可以在变量中使用变量,而不必在指标查询中对服务器,应用程序和传感器名称之类的内容进行硬编码。变量在仪表板顶部显示为下拉选择框。这些下拉菜单使更改仪表盘中显示的数据变得容易。
地址传送门

1. 什么是变量?

变量是值的占位符。您可以在指标查询和面板标题中使用变量。因此,当您使用仪表板顶部的下拉菜单更改值时,面板的指标查询将更改以反映新值。

2. 使用

$varname 示例:$level
[[varname]] 示例:[[level]]

3. 添加变量

页面右上角设置图标

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_数据源,第1张

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_grafana配置echarts_02,第2张

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_grafana配置echarts_03,第3张

es变量语法:

语法

描述

{“find”: “fields”, “type”: “keyword”}

返回索引类型为的字段名称列表keyword。

{“find”: “terms”, “field”: “@hostname”, “size”: 1000}

返回指定字段的值列表。查询将使用当前仪表板时间范围作为查询时间范围。

{“find”: “terms”, “field”: “@hostname”, “query”: ‘“’}

使用术语聚合和指定的lucene查询过滤器返回指定字段的值列表。查询将使用当前仪表板时间范围作为查询时间范围。

变量类型:

类型

描述

Query

通过此变量类型,您可以编写数据源查询,该查询通常返回度量标准名称,标记值或键的列表。例如,查询返回服务器名称,传感器ID或数据中心的列表。

Interval

该变量可以表示时间跨度。代替使用时间或日期直方图间隔对组进行硬编码,请使用此类型的变量。

Data source

此类型使您可以快速更改整个仪表板的数据源。如果您在例如不同的环境中有多个数据源实例,则很有用。

Custom

使用逗号分隔列表手动定义变量选项。

Constant

定义一个隐藏常量。对于要共享的仪表板的度量标准路径前缀很有用。在仪表盘导出期间,常量变量将被设置为导入选项。

Ad hoc filters

当前仅适用于某些数据源(InfluxDB和Elasticsearch)的一种非常特殊的变量。它允许您添加键/值过滤器,该过滤器将自动添加到使用指定数据源的所有度量查询中。

Text

此变量类型将显示为自由文本输入字段,并带有可选的默认值。

属性

  • Refresh: 控制何时更新变量选项列表
  • Regex:通过正则表达式过滤query返回的值
  • Sort:定义下拉列表中选项的排序顺序。Disabled:禁用意味着数据源查询返回的选项顺序将被使用。
  • Include All option: 添加一个特殊的All选项,其值包括所有选项。
  • Custom all value:默认情况下,All值将包含组合表达式中的所有选项。这可能会变得很长,并会有性能问题。很多时候,最好指定自定义all值,比如通配符regex。为了使定制的regex, globs或lucene语法在定制的all值选项中成为可能,它从来没有被转义过,所以你必须考虑什么是你的数据源的有效值。

4. 全球内置变量

可以在查询编辑器中使用

$__from是开始时间,$__to是结束时间。以毫秒为单位。这些变量仅在Grafana v6.0及更高版本中可用。
$ __ interval变量类似于上述的autointerval变量。它可以用作按时间分组的参数(对于InfluxDB,MySQL,Postgres,MSSQL),日期直方图间隔(对于Elasticsearch)或作为汇总函数参数(对于Graphite)。
$ __ interval_ms变量
此变量是以$__interval毫秒为单位的变量(而不是时间间隔格式的字符串)。例如,如果$__interval是,20m则$__interval_ms是1200000。
$ timeFilter或$ __ timeFilter变量
的$timeFilter变量返回当前选定的时间范围作为表达。例如,时间范围间隔Last 7 days表达式为time > now() - 7d。
$__name 这个变量只在Singlestat面板中可用,并且可以在Options选项卡的前缀或后缀字段中使用。变量将被替换为系列名称或别名。

5.Repeating Panels(重复面板)

模板变量对于在整个仪表板上动态更改查询非常有用。如果希望Grafana根据您选择的值动态创建新的面板或行,则可以使用“ Repeat”功能。

如果您启用了Multi-value或Include all value选项,则可以选择一个面板,然后让Grafana对每个选定值重复该面板。您可以在面板编辑模式下的“ General”选项卡下找到“ Repeat”功能。

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_字段_04,第4张

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_grafana配置echarts_05,第5张

回到首页,变量选择4个,就会产生4个图形,效果如下:

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_数据源_06,第6张

6. Ad hoc filters

Ad hoc filters类型的变量比较特殊,所以拿出来单独讲。
这是一种非常特殊的变量,目前只适用于某些数据源,如流感数据库和Elasticsearch。它允许您添加键/值过滤器,这些过滤器将自动添加到使用指定数据源的所有度量查询中。

设置变量

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_字段_07,第7张

使用变量

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_数据源_08,第8张

这样在这个dashboard中使用到Elasticsearch数据源的所有panel在查询时都会自动添加a=-55这个条件。

我们查看请求参数:

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_数据源_09,第9张

grafana配置echarts grafana配置es数据源,grafana配置echarts grafana配置es数据源_数据源_10,第10张

在JSON数据源中使用
key对应/tag-keys value对应/tag-values

/tag-keys
Example request

{ }

The tag keys api returns:

[
    {"type":"string","text":"City"},
    {"type":"string","text":"Country"}
]

/tag-values
Example request

{"key": "City"}

The tag values api returns:

[
    {"text": "Eins!"},
    {"text": "Zwei"},
    {"text": "Drei!"}
]


https://www.xamrdz.com/web/2ag1951652.html

相关文章: