Grafana生成无效查询

时间:2019-02-18 19:08:06

标签: grafana prometheus

我尝试为查询创建模板变量,但是一旦将变量放入查询中,就会引发“解析错误”

Grafana + Prometheus数据源: 在grafana变量中,我创建了一个简单的变量,名称为'prom_var',类型为'query'。查询字段包含:'go_gc_duration_seconds'

页面底部有“值预览”

go_gc_duration_seconds{instance="localhost:9090",job="prometheus",quantile="0"}
go_gc_duration_seconds{instance="localhost:9090",job="prometheus",quantile="0.25"}
go_gc_duration_seconds{instance="localhost:9090",job="prometheus",quantile="0.5"}
go_gc_duration_seconds{instance="localhost:9090",job="prometheus",quantile="0.75"}
go_gc_duration_seconds{instance="localhost:9090",job="prometheus",quantile="1"}

然后,我使用以下查询创建“图形”面板:$ prom_var

它工作正常。

但是一旦我在变量设置页面中检查了多值字段,它就不再起作用: “在char 23处解析错误:无法解析剩余的输入“ \ {instance =” lo“ ..”。“

我检查了生成的查询,看来问题出在grafana试图以错误的方式进行转义。

有效的查询:

api/v1/query_range?query=go_gc_duration_seconds%7Binstance%3D%22localhost%3A9090%22%2Cjob%3D%22prometheus%22%2Cquantile%3D%220%22%7D&start=1550512995&end=1550516610&step=15"

没有:

api/v1/query_range?query=go_gc_duration_seconds%5C%5C%7Binstance%3D%22localhost%3A9090%22%2Cjob%3D%22prometheus%22%2Cquantile%3D%220%22%5C%5C%7D&start=1550512860&end=1550516475&step=15"

有问题的部分是'%5C%5C%7B'

有没有办法关闭这种转义?

1 个答案:

答案 0 :(得分:1)

我认为这可以帮助:https://github.com/grafana/grafana/issues/5304

另外,发现在某些情况下,Grafana是以不同方式逃逸的:https://github.com/grafana/grafana/issues/10939