Skip to content

Auto-Heal & Watchdog

Exaplay 3 includes a built-in crash recovery system designed for unattended operation in permanent installations, trade-show booths, and touring productions that run 24/7.

Watchdog status with saved state and recovery log

How It Works

Exaplay continuously saves its playback state to disk while a small background Watchdog service keeps an eye on the application. If Exaplay crashes or hangs, the Watchdog restarts it and Exaplay picks up playback from approximately the timecode where it stopped.

Enabling Auto-Heal

Auto-Heal is enabled by default. To disable it for a session, launch Exaplay 3 with the -fresh flag.

Watchdog Service

The Watchdog is installed as a Windows Service and starts automatically with Windows. You do not need to interact with it directly.

To check its status:

powershell
Get-Service -Name "Exaplay3Watchdog"

To restart it manually:

powershell
Restart-Service -Name "Exaplay3Watchdog"

Auto-Heal Configuration

SettingDescriptionDefault
Heartbeat intervalHow often the engine writes its heartbeat (ms)500
Miss thresholdNumber of missed heartbeats before restart is triggered10
Restart delaySeconds to wait before restarting after a crash5
Max restartsMaximum automatic restarts within a rolling 5-minute window3

Configure these in Config → System → Auto-Heal.

Manual Recovery

If the system does not recover automatically:

  1. Check the Watchdog Service status (see above).
  2. Look at the log file in Documents\Exaplay3\logs\ for the error.
  3. Start Exaplay 3 manually; Auto-Heal will still restore the last saved state.

Skipping Auto-Heal Restore

To start with a clean state (ignoring any saved auto-heal data), launch Exaplay 3 with:

exaplay3.exe -fresh

This is useful after a major project change or when debugging.

Exaplay 3 User Documentation