github.com/keybase/client/go@v0.0.0-20241007131713-f10651d043c8/updater/watchdog/README.md (about)

     1  ## Watchdog
     2  
     3  The watchdog is in charge of ensuring that a list of programs are always running.
     4  The watchdog will start these programs (it will be the parent of those processes).
     5  If the watchdog is terminated, the monitored programs will also be terminated.
     6  
     7  When the watchdog starts up, it will kill any programs that it will be monitoring.
     8  Then it will monitor a list of programs and will restart them if they exit.
     9  Programs can be configured to always run, or to stop when receiving a particular
    10  exit status.