Skip to content
  • Flore Harlé's avatar
    feat(main)!: use watchdog of SystemD · 2e636de7
    Flore Harlé authored
    The launcher and the watchdog of flexisip are removed and replaced by
    the services management of SystemD that provides a watchdog. The
    behavior of a Flexisip service is configured in the SystemD unit
    files. By default, a service notifies SystemD once startup is
    complete, using `Type=notify`. The SystemD watchdog is then enabled,
    and the service's main loop periodically notifies the watchdog to
    confirm that the process is alive and not blocked. The watchdog
    timeout is configured in the service's unit file by `WatchdogSec` (10s
    by default), while the main loop notification interval is set via the global
    parameter `watchdog-notify-interval` (1s by default).
    
    Flexisip now uses `Restart=on-failure` in its SystemD service units by
    default. This ensures that if a service crashes, exits with a non-zero
    status or fails to notify the watchdog before the timeout, SystemD
    automatically restarts it. SystemD also restarts if the
    RESTART_EXIT_CODE is received (`RestartForceExitStatus...
    2e636de7
To learn more about this project, read the wiki.