Notifications
The Notifications page is your in-app inbox for platform alerts, system events, and edge configuration changes. It consolidates everything the dashboard "Recent Activity" widget shows into a single chronological feed.
Navigate to Notifications from the top navigation bar, click the bell icon, or click View All → on the dashboard "Recent Activity" widget — all three land you on /notifications.
Two Sources, One Feed
The page surfaces two distinct streams in a single chronological list:
- Alerts — fired by the observability stack (PromQL rules in vmalert), routed via vmalertmanager, persisted in the orchestrator's notifications table. These have a read/unread state, can be marked read, and can be deleted.
- Edge config changes — synthesised in real time from each edge's current configuration sync state ("Config Synced", "Config Changed", "Config Sync Failed"). These rows are derived from edge state — they're informational only and don't carry read/unread state or admin actions.
Use the Source filter (see Filters below) to slice between them.
Alert Pipeline
Alerts originate from the observability stack and flow through the following pipeline before appearing in the UI:
- vmalert evaluates PromQL alerting rules against metrics collected from edge devices.
- vmalertmanager receives fired alerts, applies grouping and inhibition rules, and routes them to configured receivers.
- Webhook receiver — the orchestrator API exposes a webhook endpoint that vmalertmanager calls when an alert fires or resolves.
- Notifications table — the API persists the incoming alert payload to the database, associating it with the relevant edge device and tenant.
- UI — the Notifications page fetches from the notifications table and displays alerts in real time.
Alert resolution is also tracked: when vmalertmanager sends a resolved event, the corresponding notification is marked with a Resolved badge without being deleted.
Config Change Source
Config-change rows reflect the current sync state of each edge — one row per edge per state, not one row per transition. So a single row tells you whether each edge is currently in sync, dirty (changes pending push), or in a failed sync state. Triggering a sync from the edge configuration page replaces the dirty/failed row with a fresh "Config Synced" row once the edge ACKs.
These rows are not stored — they're computed at read time from the edge's current configuration state. There is no read/unread concept and no per-row delete; the row simply changes as the edge's state changes.
Topbar Badge
The bell icon in the top navigation bar displays a count of unread alerts only — config-change rows have no read/unread state, so they don't contribute to the badge count. This keeps the badge a meaningful "you have alerts to acknowledge" indicator rather than a count of every edge state in the system. The count is refreshed automatically every 30 seconds via a background poll.
Notification Types
Each notification is classified by severity, indicated by a coloured left border and icon.
| Type | Colour | When Used |
|---|---|---|
| Error | Red | Critical failures — edge offline, WireGuard handshake failure, VPP crash, config sync failed. |
| Warning | Amber | Degraded conditions — high CPU, packet loss, link flap, config changes pending push. |
| Success | Green | Positive events — edge connected, configuration applied successfully. |
| Info | Blue | Informational events — provisioning started, template applied. |
Config-change rows additionally carry a Config Change badge so you can spot them at a glance even when the Source filter is set to All.
Filters
Use the filter bar to narrow the list without leaving the page.
| Filter | Options | Description |
|---|---|---|
| Source | All Sources, Alerts, Config Changes | Slice between alerts (from the observability stack) and edge configuration-sync events. Default: All. |
| Severity | All Severities, Errors, Warnings, Success, Info | Show only rows of a specific severity. |
| Status | All, Unread, Read | Alert-only — config-change rows have no read state and are unaffected. |
| Device | All Devices, System, (edge list) | Scope to a specific edge device, or show only platform-level system notifications that are not associated with any device. |
Filters are applied client-side and reset pagination to page 1 automatically when changed.
Reading Notifications
Expanding Details
Click the chevron icon on any notification card to expand it and view:
- The associated device name with a link to the edge detail page.
- The tenant the device belongs to (visible to Super Admins).
- Raw metadata from the alert payload in JSON format.
- The alert fingerprint — a stable hash used by vmalertmanager to correlate firing and resolved events for the same condition.
Navigating to a Device
Click the device name link inside a notification to jump directly to the edge or MTGE detail page. If you are a Super Admin viewing notifications across all tenants, the platform will automatically switch the tenant context before navigating so the correct edge is visible.
Managing Notifications
Mark-as-read and delete actions apply to alerts only. Config-change rows are derived from current edge state — they have no row to mark or delete; the row updates as the edge state changes.
Marking as Read
- Click the checkmark icon on an individual alert to mark it as read. The unread indicator (blue dot) disappears and the topbar badge count decreases.
- Click Mark All Read in the page header to mark all alerts as read in a single action.
Deleting Notifications
- Click the trash icon on an individual alert to remove it permanently.
- Click Clear All to delete every alert in your inbox regardless of filters.
Deletion is permanent. Alerts cannot be recovered after they are deleted. Export the activity log from Admin > Audit Log if you need a durable record of alert history. Config-change rows are not affected by these actions — they reflect current edge state.
Pagination
The notification list is paginated. Use the page navigation controls at the bottom of the list to move between pages. The page size can be adjusted using the selector at the bottom right (10, 25, 50, or 100 items per page). Your preferred page size is saved in your user settings and persists across sessions.
Permissions
All authenticated users can view and manage their own notifications. Super Admins see notifications across all tenants and can filter by tenant from the device filter. Tenant Admins see only notifications associated with devices within their tenant.