I have a simple Python snippet managed by a systemd service which logs to the rsys[l]ogd daemon […]
Não, você não tem.
O que você tem é um serviço que registra no diário do systemd. O servidor atendendo no soquete /dev/log
conhecido com o qual seu programa Python está falando não é rsyslogd
. É systemd-journald
. rsyslogd
está anexado ao outro lado de systemd-journald
, e seu programa em Python não está falando com ele.
A partir disso, deve ficar claro que a única maneira de não enviar material via systemd-journald
é usar alguma outra rota outra para rsyslogd
, não socket conhecido que sua biblioteca Python usa por padrão. Tudo depende de como você configurou rsyslogd
.
- É possível que você tenha ativado um servidor UDP com o módulo
imudp
e, nesse caso, você poderia dizer ao seu programa Python para usá-lo usando uma biblioteca diferente do Python que fala com esse servidor UDP. (A biblioteca syslog do Python é programada para usar o soquete local conhecido.) - Ou (e melhor, dado que você precisa ter cuidado ao não abrir um serviço UDP para o mundo fora de sua máquina) você poderia ter dado
rsyslogd
um segundo, não bem conhecido,AF_LOCAL
socket para ouvir por configurando isso na configuração do móduloimuxsock
. Novamente, você terá que dizer ao seu programa em Python para usar isso e usar uma biblioteca Python diferente.
O que exatamente você faz no seu programa em Python está além do escopo desta resposta.