Add handling multiple VRRP instances in dashboard

Changes:
  - add "vrrp" dropdown ("All" allowed)
    used for "keepalived_state" metric's "name" label
  - added VRRP instance "name" in row title
  - decreased single stat panels width
    for better view of many instances
  - changed null->NONE mapping for VRRP state

Change-Id: If48120bbc481143fc295c4e5b8ed81c22d484144
Related-bug: PROD-24587 (PROD:24587)
diff --git a/keepalived/files/grafana_dashboards/keepalived_prometheus.json b/keepalived/files/grafana_dashboards/keepalived_prometheus.json
index 361646b..06b357d 100644
--- a/keepalived/files/grafana_dashboards/keepalived_prometheus.json
+++ b/keepalived/files/grafana_dashboards/keepalived_prometheus.json
@@ -17,7 +17,7 @@
   "gnetId": null,
   "graphTooltip": 0,
   "id": null,
-  "iteration": 1541085414079,
+  "iteration": 1542818026918,
   "links": [],
   "panels": [
     {
@@ -30,6 +30,7 @@
       },
       "id": 9,
       "panels": [],
+      "repeat": null,
       "title": "Status",
       "type": "row"
     },
@@ -53,7 +54,7 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
+        "w": 4,
         "x": 0,
         "y": 1
       },
@@ -72,7 +73,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -154,8 +155,8 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 7,
+        "w": 4,
+        "x": 4,
         "y": 1
       },
       "id": 114,
@@ -173,7 +174,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -189,7 +190,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 4,
       "scopedVars": {
         "host": {
@@ -257,8 +258,8 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 14,
+        "w": 4,
+        "x": 8,
         "y": 1
       },
       "id": 115,
@@ -276,7 +277,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -292,7 +293,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 4,
       "scopedVars": {
         "host": {
@@ -360,9 +361,9 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 0,
-        "y": 4
+        "w": 4,
+        "x": 12,
+        "y": 1
       },
       "id": 116,
       "interval": null,
@@ -379,7 +380,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -395,7 +396,1243 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "dbs01",
+          "value": "dbs01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 1
+      },
+      "id": 117,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "dbs02",
+          "value": "dbs02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 1
+      },
+      "id": 118,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "dbs03",
+          "value": "dbs03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 4
+      },
+      "id": 119,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "kvm01",
+          "value": "kvm01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 4
+      },
+      "id": 120,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "kvm02",
+          "value": "kvm02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 4
+      },
+      "id": 121,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "kvm03",
+          "value": "kvm03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 4
+      },
+      "id": 122,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "log01",
+          "value": "log01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 4
+      },
+      "id": 123,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "log02",
+          "value": "log02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 4
+      },
+      "id": 124,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "log03",
+          "value": "log03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 7
+      },
+      "id": 125,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mdb01",
+          "value": "mdb01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 7
+      },
+      "id": 126,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mdb02",
+          "value": "mdb02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 7
+      },
+      "id": 127,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mdb03",
+          "value": "mdb03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 7
+      },
+      "id": 128,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 4,
       "scopedVars": {
         "host": {
@@ -463,11 +1700,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 7,
-        "y": 4
+        "w": 4,
+        "x": 16,
+        "y": 7
       },
-      "id": 117,
+      "id": 129,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -482,7 +1719,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -498,7 +1735,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 4,
       "scopedVars": {
         "host": {
@@ -566,11 +1803,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 14,
-        "y": 4
+        "w": 4,
+        "x": 20,
+        "y": 7
       },
-      "id": 118,
+      "id": 130,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -585,7 +1822,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -601,7 +1838,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 4,
       "scopedVars": {
         "host": {
@@ -650,12 +1887,836 @@
       "valueName": "avg"
     },
     {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 10
+      },
+      "id": 131,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "msg01",
+          "value": "msg01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 10
+      },
+      "id": 132,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "msg02",
+          "value": "msg02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 10
+      },
+      "id": 133,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "msg03",
+          "value": "msg03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 10
+      },
+      "id": 134,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mtr01",
+          "value": "mtr01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 10
+      },
+      "id": 135,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mtr02",
+          "value": "mtr02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 10
+      },
+      "id": 136,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mtr03",
+          "value": "mtr03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 13
+      },
+      "id": 137,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "prx01",
+          "value": "prx01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": true,
+      "colorValue": false,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "rgba(237, 129, 40, 0.89)",
+        "#299c46"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 13
+      },
+      "id": 138,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 4,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "prx02",
+          "value": "prx02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "procstat_running{process_name=\"keepalived\",host=~\"$host\"} and on(host) keepalived_up{host=~\"$host\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0,1",
+      "title": "Keepalived@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "N/A",
+          "value": "null"
+        },
+        {
+          "op": "=",
+          "text": "UP",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "DOWN",
+          "value": "0"
+        }
+      ],
+      "valueName": "avg"
+    },
+    {
       "collapsed": false,
       "gridPos": {
         "h": 1,
         "w": 24,
         "x": 0,
-        "y": 7
+        "y": 16
       },
       "id": 59,
       "panels": [],
@@ -674,7 +2735,7 @@
         "h": 6,
         "w": 12,
         "x": 0,
-        "y": 8
+        "y": 17
       },
       "id": 113,
       "legend": {
@@ -764,7 +2825,7 @@
         "h": 6,
         "w": 12,
         "x": 12,
-        "y": 8
+        "y": 17
       },
       "id": 1,
       "legend": {
@@ -848,11 +2909,11 @@
         "h": 1,
         "w": 24,
         "x": 0,
-        "y": 14
+        "y": 23
       },
       "id": 7,
       "panels": [],
-      "title": "VRRP state",
+      "title": "VRRP ${vrrp} state",
       "type": "row"
     },
     {
@@ -875,9 +2936,9 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
+        "w": 4,
         "x": 0,
-        "y": 15
+        "y": 24
       },
       "id": 3,
       "interval": null,
@@ -894,7 +2955,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -926,7 +2987,7 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "keepalived_state{host=\"$host\"}",
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
@@ -942,11 +3003,6 @@
       "valueMaps": [
         {
           "op": "=",
-          "text": "UNKNOWN",
-          "value": "null"
-        },
-        {
-          "op": "=",
           "text": "FAILED",
           "value": "0"
         },
@@ -964,6 +3020,11 @@
           "op": "=",
           "text": "UNKNOWN",
           "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
         }
       ],
       "valueName": "current"
@@ -988,11 +3049,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 7,
-        "y": 15
+        "w": 4,
+        "x": 4,
+        "y": 24
       },
-      "id": 119,
+      "id": 139,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -1007,7 +3068,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -1023,7 +3084,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 3,
       "scopedVars": {
         "host": {
@@ -1041,7 +3102,7 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "keepalived_state{host=\"$host\"}",
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
@@ -1057,11 +3118,6 @@
       "valueMaps": [
         {
           "op": "=",
-          "text": "UNKNOWN",
-          "value": "null"
-        },
-        {
-          "op": "=",
           "text": "FAILED",
           "value": "0"
         },
@@ -1079,6 +3135,11 @@
           "op": "=",
           "text": "UNKNOWN",
           "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
         }
       ],
       "valueName": "current"
@@ -1103,11 +3164,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 14,
-        "y": 15
+        "w": 4,
+        "x": 8,
+        "y": 24
       },
-      "id": 120,
+      "id": 140,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -1122,7 +3183,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -1138,7 +3199,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 3,
       "scopedVars": {
         "host": {
@@ -1156,7 +3217,7 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "keepalived_state{host=\"$host\"}",
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
@@ -1172,11 +3233,6 @@
       "valueMaps": [
         {
           "op": "=",
-          "text": "UNKNOWN",
-          "value": "null"
-        },
-        {
-          "op": "=",
           "text": "FAILED",
           "value": "0"
         },
@@ -1194,6 +3250,11 @@
           "op": "=",
           "text": "UNKNOWN",
           "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
         }
       ],
       "valueName": "current"
@@ -1218,11 +3279,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 0,
-        "y": 18
+        "w": 4,
+        "x": 12,
+        "y": 24
       },
-      "id": 121,
+      "id": 141,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -1237,7 +3298,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -1253,7 +3314,1387 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "dbs01",
+          "value": "dbs01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 24
+      },
+      "id": 142,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "dbs02",
+          "value": "dbs02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 24
+      },
+      "id": 143,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "dbs03",
+          "value": "dbs03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 27
+      },
+      "id": 144,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "kvm01",
+          "value": "kvm01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 27
+      },
+      "id": 145,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "kvm02",
+          "value": "kvm02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 27
+      },
+      "id": 146,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "kvm03",
+          "value": "kvm03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 27
+      },
+      "id": 147,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "log01",
+          "value": "log01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 27
+      },
+      "id": 148,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "log02",
+          "value": "log02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 27
+      },
+      "id": 149,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "log03",
+          "value": "log03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 30
+      },
+      "id": 150,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mdb01",
+          "value": "mdb01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 30
+      },
+      "id": 151,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mdb02",
+          "value": "mdb02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 30
+      },
+      "id": 152,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mdb03",
+          "value": "mdb03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 30
+      },
+      "id": 153,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 3,
       "scopedVars": {
         "host": {
@@ -1271,7 +4712,7 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "keepalived_state{host=\"$host\"}",
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
@@ -1287,11 +4728,6 @@
       "valueMaps": [
         {
           "op": "=",
-          "text": "UNKNOWN",
-          "value": "null"
-        },
-        {
-          "op": "=",
           "text": "FAILED",
           "value": "0"
         },
@@ -1309,6 +4745,11 @@
           "op": "=",
           "text": "UNKNOWN",
           "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
         }
       ],
       "valueName": "current"
@@ -1333,11 +4774,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 7,
-        "y": 18
+        "w": 4,
+        "x": 16,
+        "y": 30
       },
-      "id": 122,
+      "id": 154,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -1352,7 +4793,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -1368,7 +4809,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 3,
       "scopedVars": {
         "host": {
@@ -1386,7 +4827,7 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "keepalived_state{host=\"$host\"}",
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
@@ -1402,11 +4843,6 @@
       "valueMaps": [
         {
           "op": "=",
-          "text": "UNKNOWN",
-          "value": "null"
-        },
-        {
-          "op": "=",
           "text": "FAILED",
           "value": "0"
         },
@@ -1424,6 +4860,11 @@
           "op": "=",
           "text": "UNKNOWN",
           "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
         }
       ],
       "valueName": "current"
@@ -1448,11 +4889,11 @@
       },
       "gridPos": {
         "h": 3,
-        "w": 7,
-        "x": 14,
-        "y": 18
+        "w": 4,
+        "x": 20,
+        "y": 30
       },
-      "id": 123,
+      "id": 155,
       "interval": null,
       "links": [],
       "mappingType": 1,
@@ -1467,7 +4908,7 @@
         }
       ],
       "maxDataPoints": 100,
-      "minSpan": 7,
+      "minSpan": 4,
       "nullPointMode": "connected",
       "nullText": null,
       "postfix": "",
@@ -1483,7 +4924,7 @@
       ],
       "repeat": null,
       "repeatDirection": "h",
-      "repeatIteration": 1541085414079,
+      "repeatIteration": 1542818026918,
       "repeatPanelId": 3,
       "scopedVars": {
         "host": {
@@ -1501,7 +4942,7 @@
       "tableColumn": "",
       "targets": [
         {
-          "expr": "keepalived_state{host=\"$host\"}",
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "intervalFactor": 2,
           "refId": "A",
@@ -1517,11 +4958,6 @@
       "valueMaps": [
         {
           "op": "=",
-          "text": "UNKNOWN",
-          "value": "null"
-        },
-        {
-          "op": "=",
           "text": "FAILED",
           "value": "0"
         },
@@ -1539,6 +4975,931 @@
           "op": "=",
           "text": "UNKNOWN",
           "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 33
+      },
+      "id": 156,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "msg01",
+          "value": "msg01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 33
+      },
+      "id": 157,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "msg02",
+          "value": "msg02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 8,
+        "y": 33
+      },
+      "id": 158,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "msg03",
+          "value": "msg03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 12,
+        "y": 33
+      },
+      "id": 159,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mtr01",
+          "value": "mtr01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 16,
+        "y": 33
+      },
+      "id": 160,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mtr02",
+          "value": "mtr02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 20,
+        "y": 33
+      },
+      "id": 161,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "mtr03",
+          "value": "mtr03"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 0,
+        "y": 36
+      },
+      "id": 162,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "prx01",
+          "value": "prx01"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
+        }
+      ],
+      "valueName": "current"
+    },
+    {
+      "cacheTimeout": null,
+      "colorBackground": false,
+      "colorValue": true,
+      "colors": [
+        "rgba(245, 54, 54, 0.9)",
+        "#299c46",
+        "rgba(237, 129, 40, 0.89)"
+      ],
+      "datasource": null,
+      "format": "none",
+      "gauge": {
+        "maxValue": 100,
+        "minValue": 0,
+        "show": false,
+        "thresholdLabels": false,
+        "thresholdMarkers": true
+      },
+      "gridPos": {
+        "h": 3,
+        "w": 4,
+        "x": 4,
+        "y": 36
+      },
+      "id": 163,
+      "interval": null,
+      "links": [],
+      "mappingType": 1,
+      "mappingTypes": [
+        {
+          "name": "value to text",
+          "value": 1
+        },
+        {
+          "name": "range to text",
+          "value": 2
+        }
+      ],
+      "maxDataPoints": 100,
+      "minSpan": 4,
+      "nullPointMode": "connected",
+      "nullText": null,
+      "postfix": "",
+      "postfixFontSize": "50%",
+      "prefix": "",
+      "prefixFontSize": "50%",
+      "rangeMaps": [
+        {
+          "from": "null",
+          "text": "N/A",
+          "to": "null"
+        }
+      ],
+      "repeat": null,
+      "repeatDirection": "h",
+      "repeatIteration": 1542818026918,
+      "repeatPanelId": 3,
+      "scopedVars": {
+        "host": {
+          "selected": false,
+          "text": "prx02",
+          "value": "prx02"
+        }
+      },
+      "sparkline": {
+        "fillColor": "rgba(31, 118, 189, 0.18)",
+        "full": false,
+        "lineColor": "rgb(31, 120, 193)",
+        "show": false
+      },
+      "tableColumn": "",
+      "targets": [
+        {
+          "expr": "keepalived_state{host=\"$host\",name=~\"$vrrp\"}",
+          "format": "time_series",
+          "intervalFactor": 2,
+          "refId": "A",
+          "step": 4
+        }
+      ],
+      "thresholds": "0.5,1.5",
+      "timeFrom": null,
+      "timeShift": null,
+      "title": "VRRP@${host}",
+      "type": "singlestat",
+      "valueFontSize": "80%",
+      "valueMaps": [
+        {
+          "op": "=",
+          "text": "FAILED",
+          "value": "0"
+        },
+        {
+          "op": "=",
+          "text": "BACKUP",
+          "value": "2"
+        },
+        {
+          "op": "=",
+          "text": "MASTER",
+          "value": "1"
+        },
+        {
+          "op": "=",
+          "text": "UNKNOWN",
+          "value": "-1"
+        },
+        {
+          "op": "=",
+          "text": "NONE",
+          "value": "null"
         }
       ],
       "valueName": "current"
@@ -1549,7 +5910,7 @@
         "h": 1,
         "w": 24,
         "x": 0,
-        "y": 21
+        "y": 39
       },
       "id": 85,
       "panels": [],
@@ -1569,7 +5930,7 @@
         "h": 7,
         "w": 24,
         "x": 0,
-        "y": 22
+        "y": 40
       },
       "id": 2,
       "legend": {
@@ -1599,7 +5960,7 @@
       "steppedLine": false,
       "targets": [
         {
-          "expr": "keepalived_state{host=~\"$host\"}",
+          "expr": "keepalived_state{host=~\"$host\",name=~\"$vrrp\"}",
           "format": "time_series",
           "instant": false,
           "intervalFactor": 2,
@@ -1659,8 +6020,6 @@
       {
         "allValue": null,
         "current": {
-          "selected": true,
-          "tags": [],
           "text": "All",
           "value": [
             "$__all"
@@ -1682,6 +6041,30 @@
         "tagsQuery": "",
         "type": "query",
         "useTags": false
+      },
+      {
+        "allValue": null,
+        "current": {
+          "tags": [],
+          "text": "All",
+          "value": "$__all"
+        },
+        "datasource": null,
+        "hide": 0,
+        "includeAll": true,
+        "label": null,
+        "multi": false,
+        "name": "vrrp",
+        "options": [],
+        "query": "label_values(keepalived_state{host=~\"$host\"},name)",
+        "refresh": 1,
+        "regex": "",
+        "sort": 1,
+        "tagValuesQuery": "",
+        "tags": [],
+        "tagsQuery": "",
+        "type": "query",
+        "useTags": false
       }
     ]
   },
@@ -1716,6 +6099,6 @@
   },
   "timezone": "",
   "title": "Keepalived",
-  "version": 2
+  "version": 3
 }
 {% endraw %}