Skip to content

Dashboards

A dashboard is a saved collection of panels laid out on a grid. Each panel runs one or more PromQL queries against your metrics and renders the result as a chart, gauge, table, or single stat. Dashboards are how you assemble a fixed view of a service, host, or system that you return to over time, rather than composing queries ad hoc.

There are three ways to build one, and they produce the same underlying object:

Whichever path you use, the result is the same versionable JSON document, editable in the builder and pullable through the CLI.

Every panel is backed by one or more named PromQL queries. The query text is what determines the data; the chart type determines how that data is drawn. A panel can hold several queries at once — for example a request rate alongside its error rate — each rendered as its own series.

The chart type is a fixed set of values:

Chart typeUse it for
lineTime-series trends such as CPU usage or request rate.
areaA single time series where volume or magnitude matters.
stacked-areaRelated series that sum to a whole, such as time broken down by component.
barComparing discrete values across categories or time buckets.
stacked-barComposition across categories, such as error counts by type per service.
scatterCorrelation between two variables or the distribution of data points.
pieProportional composition at a point in time, such as requests by status code.
bar-gaugeA horizontal bar showing a current value against a scale.
gaugeA circular gauge for a single value, such as CPU or disk utilization.
statsA raw numeric value with no chart.
tableTabular label/value rows from a query result.
service-graphA service dependency and topology graph.

Each panel also carries a unit so values format correctly. The supported units are number, percentage, bytes, bytes_per_second, and duration_ms.

Panels are placed on a 24-column grid, so a full-width panel spans 24 columns and a half-width panel spans 12. The dashboard JSON schema documents the exact fields.

The fastest path is to describe the dashboard or panel you want and let the Visualizer Agent build it. It finds the right metric, writes the PromQL, picks a chart type and unit, shows you a plan, and applies it once you approve. Everything it produces stays fully editable in the builder. This needs no PromQL or metric knowledge.

The dashboard builder is the point-and-click path. Add panels, attach PromQL queries, choose chart types and units, and arrange them on the grid. Use template variables to build one dashboard that works across every service, namespace, or environment instead of copying it per target.

Dashboards are versionable JSON. The CLI pulls them to local files, previews changes, and applies them, so a dashboard can be reviewed in a pull request and committed to source control like any other config. See dashboards as code.

Osuite ships ready-made dashboards — an APM system overview, a per-service view for every service, and Kubernetes dashboards. They populate automatically once the relevant data arrives. Pre-built dashboards are read-only: to get a custom view, build your own dashboard alongside them. The Kubernetes dashboards are covered in Infrastructure Monitoring; the APM dashboards are covered in APM and Distributed Tracing.