Widget types and configuration
Click + Add Widget in dashboard edit mode to open the Configure widget modal. Configuration is the same shape regardless of widget type — fields adjust based on what data source you pick.
Title
Free text. Shown above the rendered widget. Defaults to a name based on the data source.
Render as
Pick how the widget displays. Seven options:
| Render type | Use for |
|---|---|
| Single Value | One big number — total count, current p99, ROWS. |
| Table | Rows and columns with exact values. |
| Time Series | Line/area chart over time. |
| Bar Chart | Categorical bars (top-N services, namespaces, etc). |
| Top List | Leaderboard with horizontal share bars. |
| Log Stream | Scrollable list of recent log lines. |
| Markdown | Free-form text panel. No data, just notes/headings. |
Data source
Ten data sources, picked as button tiles:
| Source | What you query |
|---|---|
| Containers | Live container status — CPU, memory, restarts, healthy/unhealthy. |
| Pods | Pod-level data. |
| Nodes | Node-level data. |
| Deployments | Kubernetes deployments — replica counts, availability. |
| Metrics | Time-series metrics. |
| Logs | Raw log lines. |
| Alerts | Active alert rules + their state. |
| Incidents | Incident records. |
| Exceptions | Grouped stack traces. |
| Infra | Infrastructure summary data. |
Scope
Per-widget filters that narrow what the widget queries. Available scope fields depend on the data source:
- For Containers/Pods:
namespace,deployment,container. - For Logs:
namespace,pod,container,level. - For Alerts/Incidents:
severity,status.
Default is "Any" for each. The widget inherits dashboard-level scope filters too — so if you set namespace: payments at the dashboard level, every widget already filters to that namespace.
Columns
Pill list of fields to render. Click ✕ on a pill to remove a column. Defaults are sensible (e.g., for Containers: Container, Namespace, Pod, Node, CPU%, Memory, Restarts, Status).
Available columns depend on the data source.
Filters
Custom predicates beyond Scope. Click + Add filter to add a row: pick a field, an operator (=, !=, >, <, contains), and a value.
Filter rows AND together. Use multiple rows to narrow further.
Sort by
Dropdown of every column with a high→low and low→high option. Default (none) = no explicit sort.
Limit
Numeric input. Default 50. Caps the rows the widget renders. For Single Value widgets, this controls how many entries the underlying query returns before reducing to one number.
Time range
Dropdown:
- Inherit dashboard (default) — uses the dashboard's global time picker.
- Last 15m / 1h / 6h / 24h / 7d — overrides the dashboard for this widget.
Override is useful when you want a "last 7 days" trend chart alongside "last 15 minutes" tiles on the same dashboard.
Preview
A live preview of the configured widget renders at the bottom of the modal as you change settings. The preview uses your real data — what you see is what the widget will look like once saved.
Save
Save widget persists the widget to the dashboard and closes the modal. Cancel discards your changes.
The dashboard itself is not saved until you click the dashboard-level Save button at the bottom — so you can experiment with several widgets and abandon them all with Cancel if needed.