Parece que você está correndo para esta opção :
$RepeatedMsgReduction on
Você pode ter isso ativado.
Estou estudando rsyslog
por uma combinação de man pages, leitura on-line e experimentação. Gostaria de entender por que o seguinte não resulta em recursão infinita:
Do terminal 1:
$ cat /etc/rsyslog.d/dummy.conf
# dummy.conf
local7.* @127.0.0.1
& |/tmp/foopipe
$ sudo systemctl restart rsyslog
$ cat < /tmp/foopipe
Do terminal 2:
$ logger -p local7.info "Test 111"
Após o texto acima, o texto " 2018-07-16T18:09:50.866760-07:00 localhost user: Test 111
" aparece no terminal 1. Mas apenas uma linha dele aparece; ou seja, não várias cópias e nem uma inundação infinita.
Eu ainda sou muito inexperiente com arquivos de configuração rsyslog
, então estou juntando as coisas da minha compreensão rudimentar. Eu pensei que meu arquivo dummy.conf
instruiria rsyslog
a enviar meu local.info
syslog para o pipe nomeado, bem como encaminhar o syslog para 127.0.0.1.
Supondo que o último ocorra ... Não estou bem claro o que acontece a seguir, mas imaginei que rsyslog
receberia o local.info
syslog do soquete UDP / TCP que ele escuta, depois aplicaria novamente o dummy.conf
regras que instruiriam novamente o rsyslog a enviar o syslog para o pipe, assim como encaminhar o 127.0.0.1 ... assim, a recursão infinita.
Estou faltando alguma coisa? Ou rsyslog
tem smarts embutidos para impedir uma recursão infinita deste tipo?
Parece que você está correndo para esta opção :
$RepeatedMsgReduction on
Você pode ter isso ativado.