5

I'm working on a project where I'm using Grafana and InfluxdB. I was able to get all the required values to grafana.

In my response I have a filed with value less than and greater than zero. I want to add a filter where user can select the type of operation.

Any recommendation on how to crack this.

So far I have tried..

I created a Variable (constant value 0, which i tried to use in my dashboard query with less than or greater than operator. As soon as I select my variable, the operator gets changed to 'equal to' or 'not equal to'.

By providing the value directly in the query works fine.

Query reflected Using the variable which i created as constant

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

Query reflected using value directly without any variable

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

From the below table I need a way to put a dynamic filter on field_2 where I can get greater than zero values when required.

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

2 回答 2

1
select * from <table/measurement name> where field_2 > 0;

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

于 2019-06-19T01:21:54.887 回答
0

这可能是迟到的答案,但这就是我之前所做的。创建一个变量count,输入“自定义”。然后,在查询中使用该变量,如下所示 -

SELECT "service_name" FROM service  WHERE ("count" >=$count) AND $timeFilter
于 2020-04-21T11:55:13.423 回答