Como desabilitar eventos de emergência remotos inundando os consoles em um receptor rsyslog?

0

Em um recurso de registro centralizado, como evitar que mensagens de emergência remotas inundem os consoles dos usuários enquanto ainda permitem o padrão

*.emerg    :omusrmsg:*

Para quaisquer eventos locais de emergência?

Em particular, eu gostaria de registrar mensagens de emergência remotas em arquivos de log e, possivelmente, enviar um e-mail, mas as máquinas remotas não devem interromper o trabalho no servidor mestre.

O servidor principal é RHEL 7,4 x86_64
Versão do rsyslog: 8.24.0

configuração do lado do servidor (recortada):
/etc/rsyslog.conf:

$ModLoad imuxsock
$ModLoad imjournal
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
*.emerg    :omusrmsg:*
$OmitLocalLogging on

/etc/rsyslog.d/listen.conf:

$systemLogSocketName /run/systemd/journal/syslog
    
por Dani_l 13.12.2017 / 17:16

1 resposta

0

Criado um novo arquivo /etc/rsyslog.d/remote-emerg.conf:

$template myFormat0,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg:::drop-last-lf\n"
if $fromhost-ip != '127.0.0.1' and $syslogseverity-text == 'emerg' then {
*.emerg /var/log/remote/PANIC;myFormat0
stop
}

Nota : Eu tentei usar% HOSTNAME% em vez de% FROMHOST-IP%, mas sempre usava o localhost impresso mesmo quando o nome do host remoto estava configurado corretamente.

Para testar , execute o local e em um host remoto:

logger -p daemon.emerg "TEST from $HOSTNAME"

execução local imprime para cosole, remoto é registrado apenas no arquivo PANIC

    
por 13.12.2017 / 20:09