From 3fb11448641dc6f1f12de087b1e0571e594b4bc8 Mon Sep 17 00:00:00 2001
From: Maarten de Waard <maarten@greenhost.nl>
Date: Thu, 1 Apr 2021 14:06:36 +0200
Subject: [PATCH] add a whole bunch of default dashboards and test that we see
 logs for an application that is always enabled

---
 .../apps/templates/settings/grafana.yaml      | 69 +++++++++++++++++--
 test/behave/features/grafana.feature          |  4 +-
 test/behave/features/steps/steps.py           | 10 +--
 3 files changed, 69 insertions(+), 14 deletions(-)

diff --git a/ansible/roles/apps/templates/settings/grafana.yaml b/ansible/roles/apps/templates/settings/grafana.yaml
index f1e34b94c..80a113c03 100644
--- a/ansible/roles/apps/templates/settings/grafana.yaml
+++ b/ansible/roles/apps/templates/settings/grafana.yaml
@@ -55,14 +55,69 @@ dashboardProviders:
 
 dashboards:
   default:
-    k8s-resources-pod:
-      url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/kubernetes/dashboards/k8s-resources-pod.json
-      token: ''
+    apiserver:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/apiserver.json
+      datasource: Prometheus
+    cluster-total:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/cluster-total.json
+      datasource: Prometheus
+    controller-manager:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/controller-manager.json
+      datasource: Prometheus
+    k8s-resources-cluster:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/k8s-resources-cluster.json
+      datasource: Prometheus
+    k8s-resources-namespace:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/k8s-resources-namespace.json
+      datasource: Prometheus
     k8s-resources-node:
-      url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/kubernetes/dashboards/k8s-resources-node.json
-    loki-dash:
-      gnetId: 13639
-      revision: 1
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/k8s-resources-node.json
+      datasource: Prometheus
+    k8s-resources-pod:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/k8s-resources-pod.json
+      datasource: Prometheus
+    k8s-resources-workload:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/k8s-resources-workload.json
+      datasource: Prometheus
+    k8s-resources-workloads-namespace:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/k8s-resources-workloads-namespace.json
+      datasource: Prometheus
+    kubelet:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/kubelet.json
+      datasource: Prometheus
+    namespace-by-pod:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/namespace-by-pod.json
+      datasource: Prometheus
+    namespace-by-workload:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/namespace-by-workload.json
+      datasource: Prometheus
+    persistaentvolumeusage:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/persistentvolumeusage.json
+      datasource: Prometheus
+    pod-total:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/pod-total.json
+      datasource: Prometheus
+    proxy:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/proxy.json
+      datasource: Prometheus
+    scheduler:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/scheduler.json
+      datasource: Prometheus
+    statefulset:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/statefulset.json
+      datasource: Prometheus
+    workload-total:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/kubernetes/dashboards/workload-total.json
+      datasource: Prometheus
+    node-rsrc-use:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/prometheus/dashboards/node-rsrc-use.json
+      datasource: Prometheus
+    nodes:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/prometheus/dashboards/nodes.json
+      datasource: Prometheus
+    loki-logs:
+      url: https://raw.githubusercontent.com/monitoring-mixins/website/c0854f204e600dbc77e2c345dd7e4c0ff114270e/assets/loki/dashboards/loki-logs.json
+      # This datasource is added by the loki-stack helm chart
       datasource: Loki
 
 datasources:
diff --git a/test/behave/features/grafana.feature b/test/behave/features/grafana.feature
index e62a28fc3..d759396f8 100644
--- a/test/behave/features/grafana.feature
+++ b/test/behave/features/grafana.feature
@@ -19,7 +19,7 @@ Scenario: Login to grafana
   Then I wait on element "sidemenu.sidemenu" for 60000ms to be visible
   And I expect that the path is "/"
 
-Scenario: As an admin I want to look at the eventrouter logs
-  When I open the grafana explore eventrouter URL
+Scenario: As an admin I want to look at the helm-operator logs
+  When I open the grafana explore helm-operator URL
   Then I wait on element ".logs-panel" for 25000ms to be visible
   And I expect that element ".datapoints-warning" does not exist
diff --git a/test/behave/features/steps/steps.py b/test/behave/features/steps/steps.py
index f65e96ff8..aab05806a 100644
--- a/test/behave/features/steps/steps.py
+++ b/test/behave/features/steps/steps.py
@@ -13,11 +13,11 @@ def step_impl(context):
     """Open wordpress URL."""
     context.behave_driver.get(context.wordpress['url'])
 
-@when(u'I open the grafana explore eventrouter URL')
-@given(u'I open the grafana explore eventrouter URL')
+@when(u'I open the grafana explore helm-operator URL')
+@given(u'I open the grafana explore helm-operator URL')
 def step_impl(context):
     """Open wordpress URL."""
-    eventrouter_url = str(context.grafana["url"]) + '/explore?orgId=1&left=["now-1h","now","Loki",{"expr":"{app=\\\"eventrouter\\\"}"}]'
-    print(eventrouter_url)
-    context.behave_driver.get(eventrouter_url)
+    helm_operator_url = str(context.grafana["url"]) + '/explore?orgId=1&left=["now-1h","now","Loki",{"expr":"{app=\\\"helm-operator\\\"}"}]'
+    print(helm_operator_url)
+    context.behave_driver.get(helm_operator_url)
 
-- 
GitLab