Openstack API check improvements
- show public endpoint on the dasboard;
- switch from "name" to "service_name" label;
- replace component alerts by generic OpenstackServiceEndpointDown.
Related-PROD: PROD-35549
Change-Id: I65dfba292a0e55a7d9c1cd9f77b31a60a413c19a
diff --git a/neutron/files/grafana_dashboards/neutron_l2_prometheus.json b/neutron/files/grafana_dashboards/neutron_l2_prometheus.json
index aef97b6..313ca4a 100755
--- a/neutron/files/grafana_dashboards/neutron_l2_prometheus.json
+++ b/neutron/files/grafana_dashboards/neutron_l2_prometheus.json
@@ -72,16 +72,15 @@
"tableColumn": "",
"targets": [
{
- "expr": "min(openstack_api_check_status{service=~\"neutron.*\"})",
+ "expr": "openstack_api_check_status{interface=\"public\",service_name=\"neutron\"}",
"format": "time_series",
"intervalFactor": 2,
- "legendFormat": "{{ service }}",
"refId": "A",
"step": 60
}
],
"thresholds": "0.5,1.5",
- "title": "API Availability",
+ "title": "Public VIP API Availability",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
diff --git a/neutron/files/grafana_dashboards/neutron_l2_prometheus_fluentd.json b/neutron/files/grafana_dashboards/neutron_l2_prometheus_fluentd.json
index c205c33..928300e 100755
--- a/neutron/files/grafana_dashboards/neutron_l2_prometheus_fluentd.json
+++ b/neutron/files/grafana_dashboards/neutron_l2_prometheus_fluentd.json
@@ -97,14 +97,14 @@
"tableColumn": "",
"targets": [
{
- "expr": "min(openstack_api_check_status{name=\"neutron\"})",
+ "expr": "openstack_api_check_status{interface=\"public\",service_name=\"neutron\"}",
"format": "time_series",
"intervalFactor": 2,
"refId": "A"
}
],
"thresholds": "0.5,0.5",
- "title": "VIP API availability",
+ "title": "Public VIP API Availability",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
diff --git a/neutron/files/grafana_dashboards/neutron_prometheus.json b/neutron/files/grafana_dashboards/neutron_prometheus.json
index 500958e..77c7b9b 100755
--- a/neutron/files/grafana_dashboards/neutron_prometheus.json
+++ b/neutron/files/grafana_dashboards/neutron_prometheus.json
@@ -72,16 +72,15 @@
"tableColumn": "",
"targets": [
{
- "expr": "min(openstack_api_check_status{service=~\"neutron.*\"})",
+ "expr": "openstack_api_check_status{interface=\"public\",service_name=\"neutron\"}",
"format": "time_series",
"intervalFactor": 2,
- "legendFormat": "{{ service }}",
"refId": "A",
"step": 60
}
],
"thresholds": "0.5,1.5",
- "title": "API Availability",
+ "title": "Public VIP API Availability",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
diff --git a/neutron/files/grafana_dashboards/neutron_prometheus_fluentd.json b/neutron/files/grafana_dashboards/neutron_prometheus_fluentd.json
index b632c8d..6d6f16b 100755
--- a/neutron/files/grafana_dashboards/neutron_prometheus_fluentd.json
+++ b/neutron/files/grafana_dashboards/neutron_prometheus_fluentd.json
@@ -97,14 +97,14 @@
"tableColumn": "",
"targets": [
{
- "expr": "min(openstack_api_check_status{name=\"neutron\"})",
+ "expr": "openstack_api_check_status{interface=\"public\",service_name=\"neutron\"}",
"format": "time_series",
"intervalFactor": 2,
"refId": "A"
}
],
"thresholds": "0.5,0.5",
- "title": "VIP API availability",
+ "title": "Public VIP API Availability",
"type": "singlestat",
"valueFontSize": "80%",
"valueMaps": [
diff --git a/neutron/meta/grafana.yml b/neutron/meta/grafana.yml
index 2a1e380..63402dd 100644
--- a/neutron/meta/grafana.yml
+++ b/neutron/meta/grafana.yml
@@ -106,7 +106,7 @@
type: dashboard
target:
cluster_status:
- expr: avg(openstack_api_check_status{service=~"neutron.*"})
+ expr: openstack_api_check_status{interface="public",service_name="neutron"}
{%- if pillar.neutron.get('server', {}).get('backend', {}).engine is defined and pillar.neutron.server.backend.engine == "ml2" %}
neutron_influxdb:
datasource: influxdb
diff --git a/neutron/meta/prometheus.yml b/neutron/meta/prometheus.yml
index be9d05b..3d13a1c 100644
--- a/neutron/meta/prometheus.yml
+++ b/neutron/meta/prometheus.yml
@@ -5,16 +5,6 @@
{%- raw %}
server:
alert:
- NeutronApiOutage:
- if: >-
- openstack_api_check_status{name="neutron"} == 0
- labels:
- severity: critical
- service: neutron
- annotations:
- summary: "Neutron API outage"
- description: >-
- Neutron API is not accessible for the Neutron endpoint in the OpenStack service catalog.
NeutronApiEndpointDown:
if: >-
http_response_status{name="neutron-api"} == 0