3 ms·
In the spirit of avoiding code duplication and making daemontools-like process supervisors happy (that includes systemd for these purposes), I greatly appreciat
by pmahoney 11y ago
In the spirit of avoiding code duplication and making daemontools-like process supervisors happy (that includes systemd for these purposes), I greatly appreciate when logs can be sent to stderr
If the admin wants the logs in syslog, 2>&1 | logger or similar. If the admin wants to use multilog, s6-log, or journald, that's also easy.
(For the same reasons, daemons should not include daemonization routines but should run in the foreground. If I want it in the background, I'll arrange for my process supervisor to start it.)
- merlincorey 11y ago> (For the same reasons, daemons should not include daemonization routines but should run in the foreground. If I want it in the background, I'll arrange for my process supervisor to start it.) If a daemon doesn't... daemonize into the background, it's no longer a daemon - just a process. Silly loonix folks. Please see the FreeBSD program daemon[1] or the FreeBSD handbook section 3.8[2]. [1] https://www.freebsd.org/cgi/man.cgi?query=daemon&apropos=0&sektion=0&manpath=FreeBSD+10.2-RELEASE&arch=default&format=html https://www.freebsd.org/cgi/man.cgi?query=daemon&apropos=0&s... [2] https://www.freebsd.org/doc/handbook/basics-processes.html https://www.freebsd.org/doc/handbook/basics-processes.html
- pmahoney 11y agoThe freebsd daemon tool is exactly what I'm talking about. Debian has start-stop-daemon [1]. Process supervisors like daemontools create daemons simply by fork+exec by virtue of the parent process already being a daemon. There's no reason for every service to implement its own daemonization routine. [1] http://man.cx/start-stop-daemon%288%29 http://man.cx/start-stop-daemon%288%29