变量的语法
面板标题和度量查询可以引用变量使用两种不同的语法:
varname美元
这个语法很容易阅读,但是不允许你使用一个变量在中间的一个字。例子:apps.frontend server.requests.count美元。$ {var_name}
当你想使用这个语法插入一个变量的一个表达式。$ {var_name: <格式>}
这种格式给你更多的控制如何Grafana插入值。指高级变量格式选项为更多的细节在所有格式类型。[[varname]]
不要使用。弃用旧的语法,将在未来的版本中被删除。
前查询发送到数据源的查询内插,这意味着变量替换它的当前值。在插值过程中,变量值逃了出来为了符合查询语言的语法和使用它。例如,一个变量中使用一个正则表达式InfluxDB或普罗米修斯查询将regex逃脱了。读取数据源特定的文档主题细节值插值期间逃离。
高级语法来覆盖默认数据源格式,请参考高级变量格式选项。
高级变量格式选项
变量的格式插值取决于数据源,但也有一些情况下,您可能想要更改默认格式。
例如,MySql的默认数据源加入多个值为逗号分隔的报价:“server01”、“server02”
。在某些情况下,您可能希望有一个逗号分隔的字符串没有引号:server01, server02
。你可以用先进的变量实现格式化选项下面列出。
一般的语法
语法:$ {var_name:选择}
测试上的格式化选项Grafana玩网站。
如果指定任何无效的格式选项一团
是默认的/后备选项。
另一种语法(也可能在未来被弃用)[[var_name:选项]]
。
CSV
作为一个以逗号分隔的字符串格式变量与多个值。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:csv}的插值结果:test1, test2的
分布式- OpenTSDB
格式为OpenTSDB变量与多个值的自定义格式。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:分布式}的插值结果:test1,服务器= test2的
Doublequote
格式单和多值变量为一个以逗号分割的字符串,逃跑了”
在每个值\”
和每个值和引用”
。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:doublequote}的插值结果:““test1”、“test2””
一团-石墨
格式变量与多个值成一团(石墨查询)。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:一滴}的插值结果:“{test1, test2}”
JSON
作为一个以逗号分隔的字符串格式变量与多个值。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:json}的插值结果:”(“test1”、“test2)”
Lucene - Elasticsearch
格式在Lucene Elasticsearch格式变量与多个值。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:lucene}的插值结果:”(“test1”或“test2”)
Percentencode
格式单和多值变量用于URL参数。
服务器= [‘foo () bar BAZ’,‘test2)字符串插入:${服务器:percentencode}的插值结果:foo % 28% 29条% 20巴兹% 2 ctest2”
管
格式与多个值到一个变量pipe-separated字符串。
服务器= [' test1。”, 'test2'] String to interpolate: '${servers:pipe}' Interpolation result: 'test1.|test2'
生
关闭特定于数据源的格式,比如在一个SQL查询单引号。
服务器=['测试。1”、“test2的]字符串插入:$ {var_name:原始}”插值结果:“test.1 test2的
正则表达式
格式变量与多个值到一个正则表达式字符串。
服务器= [' test1。”, 'test2'] String to interpolate: '${servers:regex}' Interpolation result: '(test1\.|test2)'
Singlequote
格式单和多值变量为一个以逗号分割的字符串,逃跑了”
在每个值\ '
和每个值和引用”
。
服务器= [' test1 ', ' test2 ']字符串插入:${服务器:singlequote}的插值结果:“test1, test2”
主题是
格式单和多值变量为一个以逗号分割的字符串,逃跑了”
在每个值”
和每个值和引用”
。
服务器=[“测试”1”、“test2”]字符串插入:${服务器:是}的插值结果:”“测试”1”、“test2’”
文本
格式单和多值变量文本表示。为一个变量,它将返回文本表示。对于多值变量,它将返回文本表示结合+
。
服务器= (“test1”、“test2)字符串插入:${服务器:文本}的插值结果:“test1和test2”
查询参数
格式单和多值变量查询参数表示。例子:var-foo = value1&var-foo = value2
服务器= (“test1”、“test2)字符串插入:${服务器:queryparam}的插值结果:“var-servers = test1&var-servers = test2”