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
}