manifests/addons/dashboards/README.md
This folder contains Istio's official Grafana dashboards. These get published to Grafana during release, and are bundled into our Grafana sample.
Newer dashboards are generated with Jsonnet with the Grafonnet. More info on development workflow of these dashboards can be found here. This is the preferred method for any new dashboards.
All dashboards must use UID-based linking rather than path-based linking. This is because:
We use the MD5 hash of the dashboard filename as the UID, for example:
g.dashboard.withUid(std.md5('istio-mesh.json'))
For linking between dashboards, use the helper libraries:
istio-service.libsonnet - For linking to the Service dashboardistio-workload.libsonnet - For linking to the Workload dashboardExample of using dashboard links:
local serviceDashboard = import 'istio-service.libsonnet';
dashboard.new('My Dashboard')
+ g.dashboard.withLinks([
serviceDashboard.dashboardLink
])
Many of our older dashboards are manually created in the UI and exported as JSON and checked in.
For both dashboard type, run ./manifests/addons/gen.sh to generate all required output.
After generation, you can verify that all dashboards are using UID-based linking by running:
./manifests/addons/dashboards/test_dashboard_links.sh