Obbystreams Troubleshooting
Troubleshooting
Start by separating HTTP reachability, dashboard auth, managed process state, HLS output, and ArangoDB persistence.
Dashboard Returns 502
Check systemd:
sudo systemctl status obbystreams.service --no-pager
journalctl -u obbystreams.service --no-pager -n 120
Confirm uvicorn is listening:
ss -ltnp | rg '8767|uvicorn'
Check nginx:
sudo nginx -t
sudo systemctl status nginx --no-pager
Health Returns 503
503 means the app is reachable but the stream is not ready.
Check:
curl -sS http://127.0.0.1:8767/api/health
ps aux | rg 'obbystreams|ufc|ffmpeg'
ls -lah /var/www/live.obnoxious.lol/stream
Common causes:
- no links configured
- bad source link
- ffmpeg failed before playlist output
- output directory permissions
- stale playlist
- watchdog cooldown still in effect
Player Is Blank
Check the playlist:
curl -i http://127.0.0.1:8767/hls/ufc.m3u8
curl -i https://s.obby.ca/hls/ufc.m3u8
In the browser, inspect network requests for /hls/ufc.m3u8 and segment files. A playlist with no media segment lines is treated as not ready.
Login Fails
Check /etc/obbystreams/obbystreams.yaml:
sudo grep -n 'password\\|session_token' /etc/obbystreams/obbystreams.yaml
Restart after manual config edits:
sudo systemctl restart obbystreams.service
ArangoDB Offline
Check the app endpoint:
curl -sS http://127.0.0.1:8529/_api/version
Check app status through the dashboard API:
curl -sS https://s.obby.ca/api/arango -H 'x-obbystreams-token: TOKEN'
The dashboard can operate with ArangoDB degraded, but durable history will be incomplete.
Frontend Looks Old
Rebuild and restart:
npm ci
npm run build
sudo rsync -a static /opt/obbystreams/
sudo systemctl restart obbystreams.service
Then hard-refresh the browser. The build uses hashed asset names, so a stale static/index.html usually means the production copy did not update.