我正在使用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
答案 0 :(得分:0)
optionsFn(e)
此查询将根据您的需要过滤数据。
答案 1 :(得分:0)
这可能是较晚的答案,但这是我之前所做的。创建一个变量count
,键入“ custom”。然后,在查询中使用该变量,如下所示:
SELECT "service_name" FROM service WHERE ("count" >=$count) AND $timeFilter