Troubleshooting Archive & Storage
This guide provides solutions for storage and recording anomalies, missing archive segments, filesystem permission issues, and timeline query delays.
1. Video Is Not Being Recorded
If video files are not appearing in storage_path:
bash
# Check if the recorder service is actively writing
ruseon-cli archive statusDiagnostic Checklist:
- Global Recording Enabled: Check that
recording.enabled: trueis set inconfig.yaml. - Camera-Specific Recording: Check if the camera has recording enabled via REST API (
GET /api/v1/cameras/{id}). - Filesystem Permissions: Verify that the process user (
ruseon) owns the storage directory:bashsudo chown -R ruseon:ruseon /var/lib/ruseon/recordings sudo chmod 755 /var/lib/ruseon/recordings - KeyFrame Arrival: fMP4 recording starts only upon receiving the first I-Frame (KeyFrame). If a camera only emits P-frames or drops keyframes, the recorder waits.
2. Gaps or Missing Segments in the Timeline
| Cause | Diagnostic Sign | Solution |
|---|---|---|
| Camera Reconnecting | Logs show RTSP connection reset by peer | Check network cabling, camera power supply, and Wi-Fi signal strength. |
| Retention Pruning Triggered | Old segments disappear unexpectedly | Verify recording.retention_days and check if disk free space dropped below min_disk_free_gb. |
| Storage Write Failure | Logs show no space left on device or I/O error | Check disk health with smartctl -a /dev/sdX and filesystem space with df -h. |
3. Slow Timeline Scrubbing & Playback Lag
If seeking through multi-day archives feels sluggish in the web player:
- Rebuild Sidecar Indices (
.idx): If index files were deleted or skipped during a manual file migration, regenerate them using the CLI:bashruseon-cli archive reindex --camera cam_front - Mount Options: Ensure the storage volume is mounted with
noatime,nodiratimein/etc/fstab. - BadgerDB Compaction: If database queries are slow, trigger database value-log garbage collection via CLI:bash
ruseon-cli db gc