Hi everyone! I would like to plot a time series on Grafana from some documents stored in ElasticSearch. The documents are structured as follows:
{
"timestamp": date,
"name1": str,
"name2": str,
"number": float
}
Since for a given a value of name1 only certain values of name2 are possible, I set up two variables on Grafana:
Name1: {"find": "terms", "field":"name1.keyword"}
Name2: {"find":"terms", "field":"name2.keyword", "query":"name1:$Name1"}
These two variables correctly generate two drop-down menus that I can use to select the proper value of name2 given a value of name1 . Now, after selecting a given value of name1 and name2 in the menus I would like Grafana to plot the time series of number corresponding to that (unique) combination of name1 and name2 , and I’m trying to do it through the following query:
name1:$Name1 AND name2:$Name2
selecting Group By: Date Histgram and timestamp as the time axis. Problem is, this does not work properly unless I have only one single value of name2 for each name1 , and let me explain why via an example. Suppose I have these two documents:
{
"timestamp": 20220110,
"name1": "foo",
"name2": "bar",
"number": 2.0
}
{
"timestamp": 20220110,
"name1": "foo",
"name2": "tee",
"number": 3.0
}
and that I choose max as metric. In that case, no matter what I select in the name2 drop down menu, Grafana will always plot a point (20220110, 3) , where 3 corresponds to the maximum between 2 and 3. I understand the reason of this behavior: what I do not understand is how to obtain what I want. So: How can I change my query in such a way that, selecting bar in the name2 drop down menu I get a point (20220110, 2) , and if instead I select tee from the same menu I obtain (20220110, 3) ?
Thanks a lot for your help!