Merge pull request #553 from atmosx/update-grafana-dashboard-docs

Update grafana dashboard docs
This commit is contained in:
Frederic Branczyk
2020-05-27 19:09:32 +02:00
committed by GitHub
4 changed files with 38 additions and 29 deletions

View File

@@ -312,7 +312,7 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
{ ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) } { ['grafana-' + name]: kp.grafana[name] for name in std.objectFields(kp.grafana) }
``` ```
Incase you have lots of json dashboard exported out from grafan UI the above approch is going to take lots of time. to improve performance we can use `rawGrafanaDashboards` field and provide it's value as json string by using importstr In case you have lots of json dashboard exported out from grafana UI the above approach is going to take lots of time to improve performance we can use `rawDashboards` field and provide it's value as json string by using `importstr`
[embedmd]:# (../examples/grafana-additional-rendered-dashboard-example-2.jsonnet) [embedmd]:# (../examples/grafana-additional-rendered-dashboard-example-2.jsonnet)
```jsonnet ```jsonnet
local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + { local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {

View File

@@ -9,7 +9,8 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
_config+:: { _config+:: {
namespace: 'monitoring', namespace: 'monitoring',
}, },
grafanaDashboards+:: { grafana+:: {
dashboards+:: {
'my-dashboard.json': 'my-dashboard.json':
dashboard.new('My Dashboard') dashboard.new('My Dashboard')
.addTemplate( .addTemplate(
@@ -34,6 +35,7 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
.addTarget(prometheus.target('vector(1)'))) .addTarget(prometheus.target('vector(1)')))
), ),
}, },
},
}; };
{ ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } + { ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } +

View File

@@ -2,9 +2,11 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
_config+:: { _config+:: {
namespace: 'monitoring', namespace: 'monitoring',
}, },
rawGrafanaDashboards+:: { grafana+:: {
rawDashboards+:: {
'my-dashboard.json': (importstr 'example-grafana-dashboard.json'), 'my-dashboard.json': (importstr 'example-grafana-dashboard.json'),
}, },
},
}; };
{ ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } + { ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } +

View File

@@ -2,9 +2,14 @@ local kp = (import 'kube-prometheus/kube-prometheus.libsonnet') + {
_config+:: { _config+:: {
namespace: 'monitoring', namespace: 'monitoring',
}, },
grafanaDashboards+:: { grafanaDashboards+:: { // monitoring-mixin compatibility
'my-dashboard.json': (import 'example-grafana-dashboard.json'), 'my-dashboard.json': (import 'example-grafana-dashboard.json'),
}, },
grafana+:: {
dashboards+:: { // use this method to import your dashboards to Grafana
'my-dashboard.json': (import 'example-grafana-dashboard.json'),
},
},
}; };
{ ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } + { ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) } +