Widget states
A widget on a custom dashboard doesn't only show data. Between the moment you open a dashboard and the moment a chart appears, the widget reports what it's doing, and if something goes wrong it says so in place rather than rendering an empty chart. This page covers each state, what causes it, and what to do next.
What you need
- A saved dashboard with at least one widget
- The
team-dashboards:Readpermission
The states
| State | What you see | What it means |
|---|---|---|
| Loading | A skeleton placeholder in the widget body | The query is running. |
| Loaded | The chart, table, or value | The query returned data. |
| No data | No data found, with the text No results for the selected time range. Adjust the time range or query and try again | The query ran successfully and matched nothing. |
| Error | A message in the widget body, and a red border on the widget card | The query failed. |
| Warning | A message in the widget body, and a yellow border on the widget card | The query returned something, but with a caveat worth reading. |
| Cancelled | A prompt to reload | Loading was stopped before it finished, either by you selecting Cancel Refresh or by leaving the dashboard mid-load. |
| Load required | A Load button instead of the chart | The widget is waiting for you to ask for the data. |
The border colors let you scan a large dashboard without reading every widget: red means a widget failed, and yellow means a widget needs attention but is not broken. A widget that loaded normally has no colored border.
No data is not an error
No data found means the query was valid and the pipeline answered with an empty result. Nothing is wrong with the widget. The usual causes are a time range that doesn't cover the data, a filter or variable narrowing the result to nothing, or the underlying data genuinely not existing yet.
Start with the time range, since it's the most common cause and the cheapest to test. Widen it, and if data appears, narrow back until you find the boundary.
Errors and warnings
An error means the query could not be answered: a syntax error in a DataPrime query, a field that doesn't exist, or a service that failed to respond. The widget shows the reason it was given, so read the message before changing the query.
To investigate, open the widget in edit mode. The query is visible and editable there for logs, metrics, spans, and DataPrime, along with its filters and functions, so you can correct it and see the result without leaving the dashboard.
A warning means the widget has data to show but something about the result deserves a second look, so the chart renders and the message stays visible above it.
An error or a warning is never hidden behind the Load button. Once a widget has failed, loading it again won't help, so Coralogix keeps the message and the colored border visible rather than replacing them with a Load prompt.
Reloading keeps the previous result on screen
When a widget reloads, whether from auto-refresh, a time range change, or a manual refresh, it keeps showing the previous result while the new query runs, instead of collapsing back to a skeleton.
This matters on a dashboard you're watching: the numbers stay readable through a refresh, and a widget that briefly flickers to a skeleton is a widget loading for the first time, not one refreshing.
Cancelled loads
Selecting Cancel Refresh while a widget is loading stops that query and leaves the widget in the cancelled state, with a yellow border and a prompt to reload. Nothing is lost. Reload the widget when you want the data.
Cancelling is useful on a heavy query you started by accident, or when you've changed the time range and no longer care about the result in flight.
Widgets that wait for a Load button
Some widgets don't query automatically. Instead of a chart, they show a Load button, and the query runs when you select it. This keeps an expensive query from running every time someone opens the dashboard.
See Performance mode for how Coralogix decides which queries to defer.
Next steps
- Tune what a widget queries in the Query builder.
- Compare several queries in one widget with multi-query.