Running Stremio Server locally gives you full control over your personal streaming setup — synced addons, your own library, and the Stremio protocol running on your hardware. But when Torrentio stops responding, the library sync stalls, or the web UI quietly goes dark, you won't know until playback fails. Vigilmon gives you continuous visibility into every layer of your Stremio Server: the HTTP server itself, each installed addon endpoint, streaming engine health, and TLS certificate expiry.
What You'll Set Up
- HTTP uptime monitor for the Stremio Server web UI
- Addon endpoint health checks (
/manifest.jsonand catalog routes) - Heartbeat monitors for the streaming engine and library sync service
- SSL/TLS certificate expiry alerts
- Alert channels with sensible thresholds
Prerequisites
- Stremio Server running (Node.js, default port
11470) - At least one addon installed (Torrentio, Cinemeta, or similar)
- A free Vigilmon account
Step 1: Monitor the Stremio Server HTTP Endpoint
Stremio Server exposes an HTTP server on port 11470. The root endpoint returns a JSON response when the server is healthy. Add this as your primary monitor:
- Log in to vigilmon.online and click Add Monitor.
- Set Type to
HTTP / HTTPS. - Enter:
http://your-server-ip:11470/ - Set Check interval to
1 minute. - Set Expected HTTP status to
200. - Click Save.
If you've placed Stremio Server behind a reverse proxy (nginx, Caddy) with HTTPS, use the HTTPS URL instead:
https://stremio.yourdomain.com/
The root response confirms the Node.js process is alive and accepting connections. A failure here means the entire server is down — no addon, no streaming, no library sync.
Step 2: Monitor Addon Manifest Endpoints
Each Stremio addon is a REST API. The /manifest.json endpoint is the entry point that Stremio Server queries when loading an addon. If it becomes unreachable, playback for that addon's content fails silently.
For each installed addon, add a separate monitor:
- Click Add Monitor → HTTP / HTTPS.
- Enter the addon's manifest URL. Common examples:
- Torrentio:
https://torrentio.strem.fun/manifest.json - Cinemeta:
https://v3-cinemeta.strem.io/manifest.json - OpenSubtitles:
https://opensubtitles-v3.strem.io/manifest.json
- Torrentio:
- Set Check interval to
5 minutes. - Set Expected HTTP status to
200. - Set Expected content to
"id"(every valid manifest contains theidfield). - Click Save.
For self-hosted addons running locally, use the local URL:
http://localhost:7000/manifest.json
Repeat for every addon you rely on. Addon failures are usually transient — set Consecutive failures before alert to 3 to avoid noise from brief API hiccups.
Step 3: Monitor Addon Catalog Endpoints
Beyond manifests, catalog endpoints (/catalog/...) are what Stremio queries for browsable content. A catalog that times out degrades the browsing experience even when the manifest loads fine.
Add a catalog check for your primary addon:
- Click Add Monitor → HTTP / HTTPS.
- Enter a catalog URL. For Cinemeta:
For Torrentio:https://v3-cinemeta.strem.io/catalog/movie/top.jsonhttps://torrentio.strem.fun/stream/movie/tt0120737.json - Set Check interval to
5 minutes. - Set Response time threshold to
5000 ms— catalog endpoints that take longer than 5 seconds will degrade the UI. - Click Save.
Catalog monitors tell you when an addon is technically alive but responding too slowly to be useful.
Step 4: Monitor Web UI Availability
Stremio Server includes a web UI accessible in the browser. If you use it directly (or expose it to your local network), add a dedicated monitor for the UI route:
- Click Add Monitor → HTTP / HTTPS.
- Enter:
http://your-server-ip:11470/(or your reverse-proxy HTTPS URL) - Enable Expected content match and check for the string
Stremioorhtml. - Set Check interval to
2 minutes. - Click Save.
This is distinct from the API availability check — content matching ensures the UI assets are being served, not just that the port is open.
Step 5: Heartbeat for the Streaming Engine
Stremio Server's torrent streaming engine (DHT/WebTorrent) is the core of streaming addon playback. It doesn't expose a dedicated health endpoint, but you can wire a heartbeat using a lightweight wrapper script.
Create a heartbeat check script at /opt/stremio/health-ping.sh:
#!/bin/bash
# Ping the Stremio local server and forward heartbeat if healthy
RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:11470/)
if [ "$RESPONSE" = "200" ]; then
curl -s "https://vigilmon.online/heartbeat/YOUR_HEARTBEAT_TOKEN" > /dev/null
fi
Add it to cron to run every 5 minutes:
*/5 * * * * /opt/stremio/health-ping.sh
In Vigilmon:
- Click Add Monitor → Cron Heartbeat.
- Set Expected interval to
5 minutes. - Copy the heartbeat URL and paste it into the script above.
- Click Save.
If Stremio Server crashes between cron runs, the heartbeat stops arriving and Vigilmon alerts you.
Step 6: Heartbeat for Library Sync
Stremio Server synchronizes your personal library (watchlists, continue watching) in the background. If the sync stalls, your library state drifts silently.
Extend the heartbeat script to also check for a recent library sync log entry:
#!/bin/bash
RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:11470/)
LAST_SYNC=$(find /home/user/.stremio-server -name "*.json" -newer /tmp/stremio-last-check 2>/dev/null | wc -l)
if [ "$RESPONSE" = "200" ] && [ "$LAST_SYNC" -gt "0" ]; then
curl -s "https://vigilmon.online/heartbeat/YOUR_LIBRARY_HEARTBEAT_TOKEN" > /dev/null
touch /tmp/stremio-last-check
fi
Adjust the path to match your Stremio Server data directory. Set the Vigilmon heartbeat interval to 60 minutes — if no sync activity is detected within an hour, you'll be alerted.
Step 7: SSL/TLS Certificate Expiry Monitoring
If Stremio Server sits behind a reverse proxy with a TLS certificate, add certificate expiry monitoring:
- Open the HTTPS monitor created in Step 1.
- Scroll to the SSL section.
- Enable Monitor SSL certificate.
- Set Alert when certificate expires in less than
21 days. - Click Save.
A 21-day window gives you time to investigate and renew before Stremio clients start rejecting the connection.
Step 8: Configure Alert Channels
- Go to Alert Channels in Vigilmon and connect Slack, email, or a webhook.
- For the main server monitor: set Consecutive failures before alert to
2(single probe blips are common with Node.js). - For addon monitors: set Consecutive failures before alert to
3(addon APIs have occasional flakiness). - Enable Recovery alerts so you know when a flapping addon stabilizes.
Summary
| Monitor | Target | What It Catches |
|---|---|---|
| HTTP server | http://server:11470/ | Node.js process down |
| Addon manifest | /manifest.json per addon | Addon API unreachable |
| Addon catalog | /catalog/... per addon | Slow or broken content browsing |
| Web UI | UI route with content match | Asset serving failure |
| Streaming heartbeat | Cron heartbeat every 5 min | Streaming engine crash |
| Library sync heartbeat | Cron heartbeat every 60 min | Sync stall |
| SSL certificate | HTTPS reverse-proxy URL | Certificate expiry |
Stremio Server hands you a private streaming stack — but private infrastructure means private responsibility for uptime. With Vigilmon polling every addon endpoint, heartbeating the streaming engine, and watching your TLS certificate, you get the same confidence that managed services charge extra for, running on hardware you control.