Skip to main content

Diagnose Disappearing Monitors Before Rebuilding the Database

GuideWritten by oncall.fyi editorialPublication approved by Burak YApproval recorded 12 September 2026
Sources and verification
Source dates
Oldest source check: 12 September 2026.
Technical verification
Separate technical verification has not been recorded.

Publication approval and technical verification are recorded separately. Automated link checks establish reachability, not accuracy. A checked example verifies only its stated test cases, not the whole article or your production setup.

In short

First determine whether monitor definitions disappeared from storage or only failed to load in the interface. Preserve logs and a consistent backup before rebuilding or clearing anything. Compare authenticated sessions, browser connections, storage health, and supported read-only evidence. Restore into an isolated instance before attempting cleanup, and avoid treating an old hardware workaround as a proven root cause.

Key takeaways

  • An empty interface does not prove the database lost its records.
  • Preserve a consistent backup before retention changes or repairs.
  • A clone with notifications disabled is the right place to test recovery.

Preserve evidence before refreshing everything

Record the time, installed version, deployment image, database backend, and actions that caused the list to disappear. Capture a screenshot and relevant browser request or socket errors before clearing site data. Avoid sharing cookies, authorization headers, notification secrets, or private monitored URLs in an issue report.

Try another authenticated session against the same instance. Check whether status pages and existing notifications continue to show current activity. An empty list in one browser while the service continues checking targets suggests a loading or session problem; it does not by itself prove database deletion.

Separate interface, transport, and persistence

ObservationInvestigation path
Only one browser failsSession, cached assets, or browser error
All browsers disconnect through the proxyProxy and persistent connection path
Direct approved access works, proxied access failsProxy configuration or timeout
Checks continue but lists fail to loadUI query or transport behavior
Definitions absent in supported storage evidenceData loss or wrong data location

Review the Uptime Kuma reverse-proxy requirements (opens in a new tab) when a proxy fronts its UI. Inspect matching application and proxy errors around the event. The troubleshooting guide (opens in a new tab) is a starting point for release-specific diagnostics.

Also verify that the process mounted the expected persistent volume and connected to the intended database. A new empty volume after a deployment change can look like lost monitors while the old data still exists elsewhere. Record paths and volume identity before moving or deleting anything.

Make a consistent recovery copy

Back up application configuration and the actual database using the supported method for that backend. For SQLite, an online backup API (opens in a new tab) can create a consistent snapshot. If stopping the application to copy its data directory, ensure all writers are stopped cleanly and capture the complete required data, not one guessed file from a live volume.

For an external database, follow its backup procedure and include application secrets needed to decrypt stored configuration. Keep the copy restricted because monitor and notification configuration can contain credentials.

Restore to a separate instance with notification delivery and outbound integrations disabled. Verify monitor definitions, status-page membership, and the expected historical scope. This is a recovery test; it is not permission to point the clone at the production database.

Measure before repairing

Inspect disk capacity, I/O latency, database size, memory pressure, and connection failures. Compare the time the UI fails with any cleanup or backup task. A migration to different hardware may improve a symptom without proving that processor architecture caused it.

Try a supported retention change, version upgrade, or storage adjustment on the clone one at a time. Do not delete heartbeat tables or run a schema-changing repair copied from a different release. Preserve the original backup and document the changed variable.

When applying the justified fix, verify repeated navigation, monitor editing, status-page loading, and fresh check execution. Finally trigger a controlled notification so recovering the interface does not leave a broken alert path undiscovered.

Did this help?

Your answer helps us improve this guide. We save only the page and your choice for 30 days.

No name, email, or incident details are requested.

Sources

Vendor facts change. Each source below shows the date this page last checked it.

  1. SQLite online backup API SQLite. Checked 12 September 2026.
  2. Uptime Kuma reverse proxy configuration Uptime Kuma. Checked 12 September 2026.
  3. Uptime Kuma troubleshooting Uptime Kuma. Checked 12 September 2026.

Related

One practical idea, occasionally

The On-Call Brief: short field notes, templates, and operational lessons.

Follow the field guide

Email subscriptions are not open yet. Read new guides in your feed reader — no email address needed.

Subscribe with RSS