Hello Guix! I recently pushed a ‘wip-syslogd’ branch in the Shepherd, which should be ready to merge in ‘devel’ in the coming days. It implements an in-process “system log” service that does the same job as good’ol syslogd as currently used in Guix System (info "(inetutils) syslogd invocation").
This is again an optional service. The goal here is to make sure shepherd can take care of everything related to service logging because that’s fundamentally part of its job. A concrete advantage of this built-in syslogd is that it can start logging earlier and can log until the very end—currently syslogd starts relatively late and terminates relatively early, which makes it hard to debug shutdown problems. See “sudo herd graph | xdot -” to visualize where ‘syslogd’ currently is in the dependency graph. The main parts are in place. What’s still missing is: reading kernel messages, integrating with the ‘log-rotation’ service, and documenting. Feedback welcome! Ludo’.