Differences between revisions 1 and 2
Revision 1 as of 2014-08-20 14:45:36
Size: 1665
Editor: Kurgan
Comment:
Revision 2 as of 2014-08-20 14:46:08
Size: 1669
Editor: Kurgan
Comment:
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
* Modificare /etc/rsyslog.conf per abilitare la ricezione remota, scommentando queste due righe:  * Modificare /etc/rsyslog.conf per abilitare la ricezione remota, scommentando queste due righe:
Line 12: Line 12:
* Creare un file di configurazione che salvi i log di ogni macchina remota in un posto definito. Nel mio caso e` /var/log/remote/ip-della-macchina.log. Il file lo chiamiamo come vogliamo e lo mettiamo dentro a /etc/rsyslog.d, per esempio possiamo chiamarlo "remote.conf". Possiamo anche inserire le righe dentro al file /etc/rsyslog.conf stesso, in questo caso vanno PRIMA dell'include da rsyslog.d.  * Creare un file di configurazione che salvi i log di ogni macchina remota in un posto definito. Nel mio caso e` /var/log/remote/ip-della-macchina.log. Il file lo chiamiamo come vogliamo e lo mettiamo dentro a /etc/rsyslog.d, per esempio possiamo chiamarlo "remote.conf". Possiamo anche inserire le righe dentro al file /etc/rsyslog.conf stesso, in questo caso vanno PRIMA dell'include da rsyslog.d.
Line 20: Line 20:
* Creare la directory /var/log/remote/
* Aggiungere una regola che ruoti i log dentro a /var/log/remote onde non trovarsi con log di 100 GB. Questo si puo` fare ad esempio aggiungendo in cima al file /etc/logrotate.d/rsyslog, subito sotto la riga che dice "/var/log/syslog" (e` la prima in alto) una riga che dice "/var/log/remote/*.log".
 * Creare la directory /var/log/remote/
 * Aggiungere una regola che ruoti i log dentro a /var/log/remote onde non trovarsi con log di 100 GB. Questo si puo` fare ad esempio aggiungendo in cima al file /etc/logrotate.d/rsyslog, subito sotto la riga che dice "/var/log/syslog" (e` la prima in alto) una riga che dice "/var/log/remote/*.log".

Come loggare da macchine remote con rsyslog

Per loggare da macchine remote con rsyslog (Debian Wheezy, ma anche precedenti direi) occorre:

  • Modificare /etc/rsyslog.conf per abilitare la ricezione remota, scommentando queste due righe:
    # provides UDP syslog reception
    $ModLoad imudp
    $UDPServerRun 514
  • Creare un file di configurazione che salvi i log di ogni macchina remota in un posto definito. Nel mio caso e` /var/log/remote/ip-della-macchina.log. Il file lo chiamiamo come vogliamo e lo mettiamo dentro a /etc/rsyslog.d, per esempio possiamo chiamarlo "remote.conf". Possiamo anche inserire le righe dentro al file /etc/rsyslog.conf stesso, in questo caso vanno PRIMA dell'include da rsyslog.d.
    $template PerHostLog,"/var/log/remote/%FROMHOST-IP%.log"
    :FROMHOST-IP,!isequal,"127.0.0.1"  -?PerHostLog
    & ~
  • Creare la directory /var/log/remote/
  • Aggiungere una regola che ruoti i log dentro a /var/log/remote onde non trovarsi con log di 100 GB. Questo si puo` fare ad esempio aggiungendo in cima al file /etc/logrotate.d/rsyslog, subito sotto la riga che dice "/var/log/syslog" (e` la prima in alto) una riga che dice "/var/log/remote/*.log".
    /var/log/syslog
    /var/log/remote/*.log
    {
            rotate 7
            daily
            missingok
            notifempty
            delaycompress
            compress
            postrotate
                    invoke-rc.d rsyslog rotate > /dev/null
            endscript
    }
    
    ... ECCETERA

A questo punto, fatto un restart di rsyslog, tutto dovebbe iniziare a funzionare.

Notare la sintassi orribile della configurazione di ryslog. Syslog-NG e` mooolto meglio.

LinuxDebian/Rsyslog (last edited 2022-11-14 15:38:02 by Kurgan)