While Prometheus is a wonderful took for keep track of our metrics, its graphing and dashboard capabilities leave a lot to be desired. This is where Grafana comes in. Grafana allows us to create beautiful persistent dashboards using our Prometheus data. These dashboards let us gain insight in the parts of our infrastructure that are most important to us, without having to continually manually query with PromQL or viewing and click on our recording rules. From our Node Exporter data to tracking our current alerts, Grafana provides us with visual insight into what’s happening.
Learning Objectives
Successfully complete this lab by achieving the following learning objectives:
- Add Prometheus as a data source
Click Add data source from the home page. Add the Prometheus data source by setting the URL to
http://localhost:9090
. Save & Test.- Add the suggested dashboards for the Prometheus data source
Click the Dashboards tab. Import the Prometheus 2.0 Stats and Grafana metrics dashboards.
- Import the “Node Exporter Full” dashboard
Click the plus sign on the side menu, then select Import.
In a new window or tab, open the JSON data for the dashboard and copy the provided data.
Return to your Grafana instance. Paste in the JSON in the provided text box.
- Create a new dashboard called “Forethought”
Click the plus sign again, this time selecting Dashboard from the options. Click the cog icon on the top of the screen and rename the dashboard to Forethought. Save.
- Add a heatmap to the dashboard
Click the Add panel button. Select Heatmap.
Click the panel title, then click Edit.
Set the metric so it tracks the average of all our response times via bucket:
sum(rate(forethought_request_hist_bucket[30s])) by (le)
Ensure the Legend is also set to
{{le}}
Switch to the Axes tab and change the Data Format to Time series buckets.
- Save the dashboard
Return to the dashboard and Save the changes.