Skip to content

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 status

Diagnostic Checklist: ​

  1. Global Recording Enabled: Check that recording.enabled: true is set in config.yaml.
  2. Camera-Specific Recording: Check if the camera has recording enabled via REST API (GET /api/v1/cameras/{id}).
  3. Filesystem Permissions: Verify that the process user (ruseon) owns the storage directory:
    bash
    sudo chown -R ruseon:ruseon /var/lib/ruseon/recordings
    sudo chmod 755 /var/lib/ruseon/recordings
  4. 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 ​

CauseDiagnostic SignSolution
Camera ReconnectingLogs show RTSP connection reset by peerCheck network cabling, camera power supply, and Wi-Fi signal strength.
Retention Pruning TriggeredOld segments disappear unexpectedlyVerify recording.retention_days and check if disk free space dropped below min_disk_free_gb.
Storage Write FailureLogs show no space left on device or I/O errorCheck 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:

  1. Rebuild Sidecar Indices (.idx): If index files were deleted or skipped during a manual file migration, regenerate them using the CLI:
    bash
    ruseon-cli archive reindex --camera cam_front
  2. Mount Options: Ensure the storage volume is mounted with noatime,nodiratime in /etc/fstab.
  3. BadgerDB Compaction: If database queries are slow, trigger database value-log garbage collection via CLI:
    bash
    ruseon-cli db gc

Released under the MIT License.