se a declaração aparentemente não estiver funcionando no rsyslog

1

Estou tentando usar a sintaxe RainerScript no meu arquivo /etc/rsyslog.conf do Debian. Eu quero registrar o material do daemon em um arquivo específico, mas apenas a partir de pppd . Aqui está o que eu adicionei:

if $programname == 'pppd' then {
    daemon.*;local2.*   -/var/log/pppd.log
}

Eu reiniciei o serviço rsyslog. As coisas são registradas neste arquivo; no entanto, também recebo material de named , portanto, a instrução if parece estar sendo ignorada ou sempre sendo avaliada como verdadeira. Por que um desses seria? Eu cometi um erro no código?

    
por Jez 04.11.2013 / 22:04

1 resposta

1

Tente:

if $programname == 'pppd' and $syslogfacility-text =='daemon' and $syslogfacility-text == 'local2' then /var/log/pppd.log
if $programname == 'pppd' then ~

A linha 1 diz "log to file" /var/log/pppd.log

A linha 2 diz "OK, parar de registrar em arquivos", como em nenhum outro arquivo de log, o til na verdade significa "descartar".

    
por 04.11.2013 / 22:14