Murloc Cult

Back to the archive

Permanent monitoring of Crashtroller: a system watchdog

A systemd service independent from the worldserver checks the autonomous player every 2 minutes: fresh status, presence in game, real progress, hourly report. If the module stops giving signs of life, the worldserver is restarted.

Build
Build success (0 min) · Target freewill-watch

Two monitoring levels

  1. Inside the module: JSON status rewritten every 5 s (control ai/autopilot/human/offline, level, XP, position, quests, activity, goal, stats) and a timestamped event log.
  2. Outside the module: freewill-watch.timer runs an independent script every 2 minutes.

What the watchdog checks

| Situation | Reaction | |---|---| | status frozen for 5 min (server up for more than 10 min) | worldserver restart | | character offline for more than 5 min | alert | | played by the AI with no progress at all (XP, level, quests, kills, position) for 20 min | alert with the current activity | | every hour | report: level, XP, zone, activity, kills, deaths, quests, stuck count |

Alerts are the starting point for the next brain fixes.