A meu ver, systemd-journald cria um par de sockets , onde publica seus eventos de log.
# systemctl cat systemd-journald.socket | egrep -v '^ *#'
[Unit]
Description=Journal Socket
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
DefaultDependencies=no
Before=sockets.target
IgnoreOnIsolate=yes
[Socket]
ListenStream=/run/systemd/journal/stdout
ListenDatagram=/run/systemd/journal/socket
SocketMode=0666
PassCredentials=yes
PassSecurity=yes
ReceiveBuffer=8M
Service=systemd-journald.service
Então, como posso ler esses eventos? Eu tentei:
# netcat -U /run/systemd/journal/stdout
# echo $?
0
# netcat -uU /run/systemd/journal/socket
netcat desconecta imediatamente da stdout ( exit status está limpa). netcat se conecta ao socket , mas não registra nenhum evento - posso confirmar isso com o comando journalctl -f -n0 , que mostra as coisas acontecendo, enquanto socket output está vazio.
Tags netcat systemd-journald socket