Repeat panel not repeating

Hello all

I am working on building a status dashboard for my network devices. I’m using Prometheus and blackbox_exporter as my db; that seems to be working OK. I have a variable set up (Instance) to pull out the IP addresses; that seems to be working too as I can see the addresses listed under ‘Preview of values’ in the variable edit screen. I also get a dropdown list of all my addresses in the main screen of my dashboard.

I have a singlestat panel configured that correctly displays the status of whichever address I pick from the dropdown. That works fine. The panel itself is configured to repeat (Repear: Instance Direction: Horizontal Max per Row: 4) but it is not repeating. All I get is a single panel that switches between addresses via the dropdown.

variable: Instance
query: query_result(sum by (instance)(probe_success{job=“blackbox_icmp”}))
regex: .instance="(.?)".*

panel config:
query: probe_success{group=“firewalls”,instance=’$Instance’,job=“blackbox_icmp”}
title: $Instance
Repeat: Instance (selected from dropdown)
Direction: Horizontal
Max per row: 4

Grafana v6.2.1 (9e40b07)

Any ideas?

thx

Try to enable Include All option for the variable and select All value in the variable select box - not just single value.

1 Like

That cured the non-repeating problem but now my panels say “no value”. When I look at the panel’s query inspector, the last entry says “result:Array[0]”.

Edit:
I’ve looked at this more closely. The problem seems to lie in how the $Instance variable is being handled. If I hard-code the ip address into the query, it works:

query:

probe_success{group="firewalls",instance="172.217.164.196",job="blackbox_icmp"}

result:

{
  "xhrStatus": "complete",
  "request": {
    "method": "GET",
    "url": "api/datasources/proxy/1/api/v1/query?query=probe_success%7Bgroup%3D%22firewalls%22%2Cinstance%3D%22172.217.164.196%22%2Cjob%3D%22blackbox_icmp%22%7D&time=1559227010"
  },
  "response": {
    "status": "success",
    "data": {
      "resultType": "vector",
      "result": [
        {
          "metric": {
            "group": "firewalls",
            "instance": "172.217.164.196",
            "job": "blackbox_icmp"
          },
          "value": [
            1559227010,
            "1"
          ]
        }
      ]
    }
  }
}

It chokes when I put in the $Instance variable:

query:

probe_success{group=“firewalls”,instance="$Instance",job=“blackbox_icmp”}

result:

{
“xhrStatus”: “complete”,
“request”: {
“method”: “GET”,
“url”: “api/datasources/proxy/1/api/v1/query?query=probe_success%7Bgroup%3D%22firewalls%22%2Cinstance%3D%22172%5C%5C.217%5C%5C.164%5C%5C.196%22%2Cjob%3D%22blackbox_icmp%22%7D&time=1559227043”
},
“response”: {
“status”: “success”,
“data”: {
“resultType”: “vector”,
“result”: []
}
}
}

OK, I have narrowed the issue down to a replicatable set of steps. I think this may be a UI issue.

    • In the dashboard settings (cog menu), in the variable settings, I turn on 'Include all option" for the $Instance variable
  1. Update variable, save the dashboard
  2. In my dashboard I have a dropdown box with an option for ‘all’. I select it and my panel repeats but they all display “no value”
  3. Back to the cog menu, turn off “include all option” for my $Instance variable
  4. Update & save
  5. This is the weird part - when I go back to my dashboard, the panel repeats and displays info correctly. My dropdown box displays ‘all’ but it does not list ‘all’ in the available options when I click on it. If I pick an option, I get a single panel but I cannot go back to ‘all’ because it does not show in the dropdown list.
  6. I can get the panels to repeat & work again by following the above steps - turn on Include All, pick all from the dropdown, then turn off Include all.

A bug perhaps?

Edit - I just discovered I can get all working panels back by typing in ‘All’ into the dropdown