tutorial

Monitoring Prowlarr with Vigilmon

Prowlarr is the indexer hub that keeps your entire *arr stack fed — when it goes down, Sonarr, Radarr, Lidarr, and Readarr all stop finding content. Here's how to monitor Prowlarr end-to-end with Vigilmon.

Prowlarr is the central indexer manager for the *arr ecosystem. It aggregates dozens of torrent and Usenet indexers into a single proxy layer, forwarding search requests from Sonarr, Radarr, Lidarr, and Readarr automatically. When Prowlarr goes offline or an indexer loses connectivity, your entire automated media stack stops finding new content — silently. Vigilmon gives you real-time uptime checks, API health monitoring, indexer connectivity alerts, and SSL certificate expiry warnings so you catch Prowlarr problems before they ripple downstream.

What You'll Set Up

  • HTTP uptime monitor for the Prowlarr web UI
  • API health check via /api/v1/system/status
  • Indexer connectivity health check
  • Integration health with Sonarr/Radarr/Lidarr/Readarr
  • SSL certificate expiry alert

Prerequisites

  • Prowlarr running (default port 9696)
  • Your Prowlarr API key (found under Settings → General → API Key)
  • A free Vigilmon account

Step 1: Monitor the Prowlarr Web UI

The first check confirms that Prowlarr's web interface is up and serving requests:

  1. Log in to vigilmon.online and click Add Monitor.
  2. Set Type to HTTP / HTTPS.
  3. Enter your Prowlarr URL: http://your-server-ip:9696 (or https://prowlarr.yourdomain.com if reverse-proxied).
  4. Set Check interval to 5 minutes.
  5. Set Expected HTTP status to 200.
  6. Click Save.

Prowlarr's UI is a React single-page app — a 200 response on the root path confirms nginx (or Caddy) is passing traffic to the Prowlarr process. Pair this with the API check in the next step for a complete picture.


Step 2: Health Check via the System Status API

Prowlarr's status endpoint confirms the application backend is running and fully initialized:

  1. Add a second HTTP / HTTPS monitor.
  2. URL: http://your-server-ip:9696/api/v1/system/status
  3. Add a Request header: X-Api-Key: YOUR_API_KEY
  4. Set Expected HTTP status to 200.
  5. Enable Keyword check and enter appName as the expected keyword.
  6. Set Check interval to 5 minutes.
  7. Click Save.

A healthy response includes:

{
  "appName": "Prowlarr",
  "version": "1.24.3.4754",
  "startupPath": "/app/prowlarr",
  ...
}

If Prowlarr is still initializing, the database is locked, or a migration failed, this endpoint will be unresponsive or return an error — alerting you before users notice the UI appears stale.


Step 3: Monitor Indexer Connectivity

Prowlarr's core job is maintaining live connections to indexers. When an indexer goes down, its API key expires, or Prowlarr's IP gets rate-limited, searches start failing silently. Use the health check API to surface these issues:

  1. Add a third HTTP / HTTPS monitor.
  2. URL: http://your-server-ip:9696/api/v1/health
  3. Header: X-Api-Key: YOUR_API_KEY
  4. Enable Keyword check and enter [] as the expected keyword.
  5. Set Expected HTTP status to 200.
  6. Click Save.

An empty array ([]) means Prowlarr reports no health warnings. When an indexer loses connectivity or an API key is rejected, this endpoint returns entries like:

[{"source": "IndexerStatusCheck", "type": "warning", "message": "Indexers unavailable..."}]

The keyword mismatch triggers a Vigilmon alert so you can open Prowlarr's System → Status page and investigate which specific indexer is failing.


Step 4: Verify Downstream App Integrations

Prowlarr syncs its indexers to connected applications (Sonarr, Radarr, Lidarr, Readarr) via their APIs. If the sync breaks — because a downstream app changed ports, restarted, or had its API key rotated — Prowlarr loses touch with part of your stack. Monitor this via the applications endpoint:

  1. Add an HTTP / HTTPS monitor.
  2. URL: http://your-server-ip:9696/api/v1/applications
  3. Header: X-Api-Key: YOUR_API_KEY
  4. Enable Keyword check and enter syncLevel as the expected keyword.
  5. Set Expected HTTP status to 200.
  6. Set Check interval to 15 minutes.
  7. Click Save.

A healthy response lists your connected apps with their sync status. If the keyword is absent or the response is empty, Prowlarr has lost its integration configuration — worth investigating immediately since new indexers won't propagate to your *arr apps.


Step 5: SSL Certificate Alert

If Prowlarr is exposed over HTTPS via a reverse proxy, monitor the certificate to avoid browser security errors that lock out access:

  1. Open the web UI monitor from Step 1.
  2. Enable Monitor SSL certificate.
  3. Set Alert when certificate expires in less than 21 days.
  4. Click Save.

Prowlarr is often the least-visited UI in the *arr stack (since it runs headlessly most of the time), which means certificate expiry goes unnoticed longest. The 21-day alert window ensures you have time to renew before Sonarr and Radarr can no longer reach Prowlarr over HTTPS.


Monitoring Summary

| Monitor | What it detects | |---|---| | Web UI (/) | Process down, proxy misconfiguration | | /api/v1/system/status | Backend crash, DB migration failure | | /api/v1/health | Indexer connectivity failures | | /api/v1/applications | Downstream *arr app sync broken | | SSL certificate | Expiring TLS cert |

Route all alerts to your team's preferred channel in Vigilmon (Settings → Notifications). When your Sonarr or Radarr queue goes dry, you'll know whether to look at the downloader, the indexer manager, or the apps themselves — without digging through logs across five different containers.

Monitor your app with Vigilmon

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

Start free →