Erro no arquivo rsyslog.conf, como registrar mais de um dispositivo?

0

Estou tentando registrar meu roteador dd-wrt e meu dispositivo nas4free. Todos os logs são enviados para um raspberrypi de reposição com um disco usb conectado para armazenar os arquivos de log. Mas há um problema com o meu arquivo rsyslog.conf. O código a seguir foi adicionado para enviar os logs dos dispositivos para o pendrive conectado no raspberrypi:

# logs for the wifi router are saved here:
$template ddwrtlogs,"/mnt/syslog/192.168.1.1.log"
*.* ?ddwrtlogs
#
# logs for the nas4free are saved here:
$template nas4freelogs,"/mnt/syslog/192.168.1.200.log"
*.* ?nas4freelogs

Isso funciona para o dispositivo 192.168.1.1, mas no arquivo 192.168.1.200.log eu encontro os mesmos logs que os do 192.168.1.1.log. Basta copiá-los para ambos os locais. Não há registros do meu nas4free.

Eu atualizei os dois dispositivos registrados para enviar todos os logs para 192.168.1.220 (= raspberrypi)

Na verdade, não sei como fazer isso funcionar para registrar dois dispositivos. O código está errado. Eu posso fazer funcionar para um dispositivo, mas se eu adicionar um segundo no /etc/rsyslog.conf ele simplesmente não funciona.

Agradecemos antecipadamente pela solução.

    
por maxim 15.12.2015 / 21:40

1 resposta

0

Foi assim que eu fiz:

Primeiro, altere o arquivo /etc/rsyslog.conf . É um arquivo de configuração muito longo, mas as únicas linhas que você tem que mudar são estas:

# provides UDP syslog reception $ModLoad imudp $UDPServerRun 514

# provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514

Em seguida, vá para /etc/rsyslog.d/ e crie arquivos nomeados para os dispositivos dos quais você espera receber informações. Estes são os meus exemplos:

touch 10-ddwrt.conf e touch 20-nas4free.conf

E aqui está a configuração de cada arquivo:

$template ddwrt, "/path/to/your/logfile/ddwrt.log" :fromhost-ip, isequal, "192.168.1.1" -?ddwrt & stop

$template nas4free, "/path/to/your/logfile/nas4free.log" :fromhost-ip, isequal, "192.168.1.200" -?nas4free & stop

E a melhor parte é que com essa configuração seu syslog local continua funcionando e permanece em /var/log/

Bônus: Eu também mudei o logrotate config. A rotação de log fornece uma maneira de limitar o tamanho total dos logs retidos enquanto ainda permite a análise de eventos recentes.

Vá para /etc/logrotate.d/ e adicione os dispositivos dos quais você recebe logs. Como isso:

touch ddwrt touch nas4free

Esta é a configuração de ambos os arquivos:

/media/pi/USB/Logs/ddwrt.log { weekly rotate 7 size 50M notifempty create compress postrotate invoke-rc.d rsyslog rotate > /dev/null endscript }

/media/pi/USB/Logs/nas4free.log { weekly rotate 7 size 50M notifempty create compress postrotate invoke-rc.d rsyslog rotate > /dev/null endscript }

    
por 27.05.2016 / 16:37