Multiple "All" options for Grafana ec2_instance_attribute filter


I’m fairly new to Grafana, I’ve looked around and couldn’t find a solution to my problem.

We’re making heavy use of Tags on AWS to classify our resources. The use-case that we have is that we have multiple versions of the same application under what we call “review apps”. That said, we might have a resource with tag “{ReviewApp: Demo1, Application: API}”, “{ReviewApp: Demo2, Application: API}” and “{ReviewApp: Demo1, Application: Front-End}”

I’ve created the following variables:

  • $ReviewAppName = ec2_instance_attribute(us-east-2, Tags.ReviewApp, {}) [Multi-value: On, Include All option: ON]
  • $ApplicationName = ec2_instance_attribute(us-east-2, Tags.Application, {}) [Multi-value: On, Include All option: ON]

Now I want to filter my graphs so I’ve added the following variable:

  • $InstanceId = ec2_instance_attribute(us-east-2, InstanceId, {“tag:ReviewApp”: ["$ReviewAppName"], “tag:Application”: ["$ApplicationName"]})

I want to be able to display all the EC2 machines if I were to pick All for $ReviewAppName and All $ApplicationName. Consequently, I want to also be able to pick All for $ReviewAppName and API for $ApplicationName for various use-cases.

When I do either case highlighted above, I’m being returned an empty list for $InstanceId. I’m not sure how to solve it, is it a limitation that I’m not aware of? If so, how do people solve similar use-cases? That seems like a deal-breaker to me.

I’m only able to get $InstanceId to return values if I am to pick a specific value for $ReviewAppName AND $ApplicationName. Which makes it hard for us to compare different piece of infrastructure of a given ReviewApp or to simply see all the Applications under a specific ReviewApp.

I’d like to know how best we could proceed forward.

Thank you!