如何使用大于和小于运算符来过滤grafana仪表板?

时间:2019-06-18 11:47:32

标签: grafana influxdb grafana-templating

我正在使用Grafana和InfluxdB的项目中工作。我能够获得grafana所需的所有值。

在我的答复中,我提交了一个小于等于零且大于零的值。我想添加一个过滤器,用户可以在其中选择操作类型。

关于如何破解此问题的任何建议。

到目前为止,我已经尝试过了。

我创建了一个变量(常数值为0,我试图在仪表板查询中使用小于或大于运算符的变量。选择变量后,运算符会立即变为“等于”或“不等于”来”。

通过直接在查询中提供值可以正常工作。

查询反映了使用我创建为常量的变量

SELECT "servicename" AS "Service Name", "topic" AS "Topic", "type" AS "Type", "count" AS "Count" FROM "KafkaLag" WHERE ("servicename" =~ /^$servicename$/ AND "topic" =~ /^$topic$/ AND "type" =~ /^$type$/ AND "count" =~ /^$Greater_than_zero$/) AND $timeFilter ORDER BY time DESC

直接使用值反映查询,而无需任何变量

SELECT "servicename" AS "Service Name", "topic" AS "Topic", "type" AS "Type", "count" AS "Count" FROM "KafkaLag" WHERE ("servicename" =~ /^$servicename$/ AND "topic" =~ /^$topic$/ AND "type" =~ /^$type$/ AND "count" > 0) AND $timeFilter ORDER BY time DESC

从下表中,我需要一种在field_2上放置动态过滤器的方法,在需要时我可以得到大于零的值。

time | field_1 | field_2 
  t1 |   v1    |    0 
  t1 |   v2    |    2 
  t2 |   v3    |    0 
  t2 |   v4    |    12

2 个答案:

答案 0 :(得分:0)

optionsFn(e)

此查询将根据您的需要过滤数据。

答案 1 :(得分:0)

这可能是较晚的答案,但这是我之前所做的。创建一个变量count,键入“ custom”。然后,在查询中使用该变量,如下所示:

SELECT "service_name" FROM service  WHERE ("count" >=$count) AND $timeFilter