tutorial

Jellyseerr Monitoring with Vigilmon: Uptime, API Health & Integration Checks

Monitor your Jellyseerr media request manager with Vigilmon — track web UI availability, the built-in status API, Jellyfin/Plex connectivity, and Radarr/Sonarr integration health.

Your Jellyseerr instance is the gateway to your entire media library request workflow. When it goes down, your users have no way to request movies or shows, your Jellyfin or Plex integration silently breaks, and Radarr/Sonarr stop receiving new requests — all without any alert. You're left troubleshooting after the fact.

Jellyseerr is a fork of Overseerr built for Jellyfin-first deployments (with Plex support too). It runs as a standalone web service, typically on port 5055, and acts as the orchestration layer between your media server and your download automation stack. Vigilmon gives you the external monitoring layer that catches failures before your users notice them.

This tutorial walks through setting up complete Jellyseerr monitoring with Vigilmon.

What You'll Build

  • A Vigilmon HTTP monitor on Jellyseerr's /api/v1/status health endpoint
  • A web UI availability check confirming the frontend loads
  • An SSL certificate expiry monitor for proxied deployments
  • Alert channels for instant notification

Prerequisites

  • Jellyseerr running (default port: 5055)
  • A free account at vigilmon.online

Step 1: Monitor the Status API Endpoint

Jellyseerr exposes a built-in health endpoint at /api/v1/status. This endpoint returns JSON that confirms the application is running, the version, and whether a media server connection is active.

Test it from your server:

curl http://localhost:5055/api/v1/status

Expected response:

{
  "version": "1.9.2",
  "commitTag": "HEAD",
  "updateAvailable": false,
  "commitsBehind": 0,
  "restartRequired": false,
  "mediaServerOnline": true,
  "appData": "/app/config"
}

The mediaServerOnline field tells you whether Jellyseerr can reach your Jellyfin or Plex server. If it's false, requests can still be created but won't sync properly.

Set up the Vigilmon monitor:

  1. Log in to Vigilmon and click New Monitor → HTTP.
  2. Set URL to https://jellyseerr.yourdomain.com/api/v1/status (or http://your-server-ip:5055/api/v1/status).
  3. Set Check interval to 60 seconds.
  4. Set Expected status code to 200.
  5. Under Advanced → JSON body assertion, add:
    • Path: version
    • Operator: exists
  6. Save the monitor.

Vigilmon now polls Jellyseerr's status API every minute from multiple regions.


Step 2: Monitor Web UI Availability

The status API can return 200 while the frontend assets fail to load — a broken build, missing static files, or a misconfigured reverse proxy can leave the API responding while users see a blank page or 404.

Add a separate UI monitor:

  1. Click New Monitor → HTTP in Vigilmon.
  2. Set URL to https://jellyseerr.yourdomain.com/ (your public Jellyseerr URL).
  3. Set Expected status code to 200.
  4. Under Advanced → Keyword check, configure:
    • Keyword present: Jellyseerr
  5. Set Check interval to 60 seconds.
  6. Save.

When the web UI loads correctly, the page title and body contain "Jellyseerr". If the reverse proxy returns a 502, or static assets fail, this monitor fires.


Step 3: Monitor Media Server Connectivity

Jellyseerr's /api/v1/status includes the mediaServerOnline boolean. You can assert on this field directly to get alerted when Jellyseerr loses its connection to Jellyfin or Plex.

Update the status monitor from Step 1:

  1. Open the monitor and go to Advanced → JSON body assertion.
  2. Add a second assertion:
    • Path: mediaServerOnline
    • Operator: equals
    • Value: true
  3. Save.

Now if Jellyfin/Plex becomes unreachable from Jellyseerr, the monitor transitions to a degraded state and Vigilmon fires an alert.


Step 4: Monitor Radarr/Sonarr Integration Health

Radarr and Sonarr integrations are configured in Jellyseerr's settings. When they become unreachable (wrong API key, host unreachable, service restarted), Jellyseerr queues requests but never forwards them. Users get no error — requests just silently pile up.

Vigilmon can monitor Radarr and Sonarr directly to catch this before it affects Jellyseerr:

Radarr health monitor:

  1. Click New Monitor → HTTP.
  2. Set URL to http://your-server-ip:7878/api/v3/system/status?apiKey=<your-radarr-api-key>.
  3. Set Expected status code to 200.
  4. Under Advanced → JSON body assertion:
    • Path: appName
    • Operator: equals
    • Value: Radarr
  5. Save.

Repeat for Sonarr on port 8989 with the path appName equaling Sonarr.

These monitors catch Radarr/Sonarr restarts or crashes that would silently break Jellyseerr's request forwarding.


Step 5: SSL Certificate Monitoring

If Jellyseerr is proxied behind Nginx, Caddy, or Traefik and served over HTTPS, an expired certificate will block all users instantly. Browsers show a hard error page.

Vigilmon monitors SSL certificates automatically for any HTTPS monitor. To confirm it's enabled:

  1. Open your Jellyseerr HTTPS monitor.
  2. Go to Advanced → SSL / TLS.
  3. Confirm Check SSL certificate is enabled.
  4. Set Warn when certificate expires in to 14 days.
  5. Save.

You'll get a warning alert two weeks before expiry and a critical alert when the cert is invalid.


Step 6: Alert Channels

Go to Notifications → New Channel in Vigilmon and configure:

  • Email — immediate alerts to your Jellyseerr admin
  • Webhook — post to Discord or Slack for your media server community

A Discord webhook alert looks like:

🔴 DOWN: jellyseerr.yourdomain.com (JSON assertion failed)
mediaServerOnline = false
Region: US-East
Triggered: 2026-02-10 03:22 UTC

When connectivity is restored:

✅ RECOVERED: jellyseerr.yourdomain.com
Downtime: 8 minutes

What You've Built

| Scenario | How Vigilmon catches it | |---|---| | Jellyseerr process crash | HTTP monitor detects 502/connection refused | | Jellyfin/Plex goes offline | mediaServerOnline JSON assertion fails | | Radarr/Sonarr unreachable | Direct Radarr/Sonarr health monitors fire | | Web UI assets broken | UI keyword monitor misses "Jellyseerr" | | SSL certificate expired | TLS check on HTTPS monitor fires | | Reverse proxy down (Nginx/Caddy) | HTTP monitor detects 502 or TLS error | | DNS misconfiguration | HTTP monitor detects DNS resolution failure |


Jellyseerr sits at the center of your self-hosted media stack. When it's down, the whole request pipeline stalls. Vigilmon gives you the external vantage point to catch failures immediately — whether the process crashed, the media server disconnected, or a certificate expired.

Start monitoring your Jellyseerr instance today — register free at vigilmon.online.

Monitor your app with Vigilmon

Free plan — 5 monitors, no credit card required. Up and running in 60 seconds.

Start free →