我正在使用带有普罗米修斯的 grafana v5.4.0 作为数据源来监控应用程序的 API 调用。
我已经创建了"请求计数"(弹簧启动图)并配置了我的 2 个应用程序来监控 API。
在图形设置 --> 变量 -->类型 = 自定义 --> 添加了 2 个应用程序名称,我还选中了"包括所有选项"复选框
但是当我在图表上选择"全部"时,我没有得到任何数据点
我的指标查询如下,
irate(http_server_requests_seconds_count{application="$application"}[5m])
但是当我从变量过滤器中选择单个应用程序名称时,它仅在我选择"全部"时显示正确的数据,消息出现"无数据点"
谁能提出一些解决方案?
谢谢
事实证明,我遇到了类似的问题,我发现使用变量会使 grafana 在标签字符串中添加额外的转义字符。
例如,在检查PromSQL查询时,我发现在特殊字符中添加了额外的%5C。
有一种方法可以在查询中忽略它们而不修改变量,正如@Devendra在他的评论中提到的:
您需要更换
your_metric_name{labelname="$variable_name"}
由
your_metric_name{labelname~="$variable_name"}
波浪号将确保 PromSQL 查询忽略转义字符。