Add service level information for Grafana dashboard

Change-Id: I81ce71d2b9cc53960fca3199ce0fd5cc2b9f782c
diff --git a/neutron/meta/grafana.yml b/neutron/meta/grafana.yml
index 602d6dc..55f0401 100644
--- a/neutron/meta/grafana.yml
+++ b/neutron/meta/grafana.yml
@@ -1,4 +1,65 @@
 dashboard:
+  service_level:
+    row:
+      neutron-service-level:
+        title: Neutron Service Levels
+        panel:
+          neutron-control-uptime:
+            title: Neutron Control Uptime
+            target:
+              neutron-control-healthy-status:
+                alias: "Healthy"
+                rawQuery: true
+                query: SELECT count(value) FROM cluster_status WHERE environment_label = '$environment' AND cluster_name = 'neutron-control' AND value = 0 AND $timeFilter
+              neutron-control-degraded-unknwon-status:
+                alias: "Degraded or Unknwon"
+                rawQuery: true
+                query: SELECT count(value) FROM cluster_status WHERE environment_label = '$environment' AND cluster_name = 'neutron-control' AND (value = 1 OR value = 2 OR value = 3) AND $timeFilter
+              neutron-control-down-status:
+                alias: "Down"
+                rawQuery: true
+                query: SELECT count(value) FROM cluster_status WHERE environment_label = '$environment' AND cluster_name = 'neutron-control' AND value = 4 AND $timeFilter
+          neutron-data-uptime:
+            title: Neutron Data Uptime
+            target:
+              neutron-data-healthy-status:
+                alias: "Healthy"
+                rawQuery: true
+                query: SELECT count(value) FROM cluster_status WHERE environment_label = '$environment' AND cluster_name = 'neutron-data' AND value = 0 AND $timeFilter
+              neutron-data-degraded-unknwon-status:
+                alias: "Degraded or Unknwon"
+                rawQuery: true
+                query: SELECT count(value) FROM cluster_status WHERE environment_label = '$environment' AND cluster_name = 'neutron-data' AND (value = 1 OR value = 2 OR value = 3) AND $timeFilter
+              neutron-data-down-status:
+                alias: "Down"
+                rawQuery: true
+                query: SELECT count(value) FROM cluster_status WHERE environment_label = '$environment' AND cluster_name = 'neutron-data' AND value = 4 AND $timeFilter
+          neutron-api-availability:
+            title: Neutron API Availability
+            target:
+              neutron-api-up-status:
+                alias: "Up"
+                rawQuery: true
+                query: SELECT count(value) FROM openstack_check_api WHERE environment_label = '$environment' AND service = 'neutron-api' AND value = 1 AND $timeFilter
+              neutron-api-down-status:
+                alias: "Down"
+                rawQuery: true
+                query: SELECT count(value) FROM openstack_check_api WHERE environment_label = '$environment' AND service = 'neutron-api' AND value = 0 AND $timeFilter
+          neutron-api-requests:
+            title: Neutron API Requests
+            target:
+              neutron-api-okay-status:
+                alias: "Okay"
+                rawQuery: true
+                query: SELECT count(max) FROM openstack_neutron_http_response_times WHERE environment_label = '$environment' AND (http_status = '2xx' OR http_status = '3xx') AND $timeFilter
+              neutron-api-error-status:
+                alias: "Error"
+                rawQuery: true
+                query: SELECT count(max) FROM openstack_neutron_http_response_times WHERE environment_label = '$environment' AND http_status = '4xx' AND $timeFilter
+              neutron-api-fatal-status:
+                alias: "Fatal"
+                rawQuery: true
+                query: SELECT count(max) FROM openstack_neutron_http_response_times WHERE environment_label = '$environment' AND http_status = '5xx' AND $timeFilter
   main:
     row:
       ost-control-plane: