Logrotate: configurare la rotazione automatica dei log

Da Guide@Debianizzati.Org.

Document-page-setup.png Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.

Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template.



Indice

Introduzione

In questi giorni ho dovuto configurare la rotazione automatica dei log di un applicazione, altrimenti questi file rischiavano di diventare troppo grandi. Così mi sono deciso di scrivere questa guida-appunto per la configurazione del servizio.

Installazione

Per installare logrotate è sufficiente un

# apt-get install logrotate

Durante l'installazione verrà creato anche un cron che si occuperò, giornalmente, di richiamare logrotate per effettuare la rotazione dei file di log. Se l'installazione viene fatta su un portatile, consiglio anche l'installazione di Anacron.


Funzionamento

Il funzionamento, di per sè, è molto semplice: ad intervalli regolari viene lanciato il programma logrotate, che si occupa di effettuare le rotazioni dei file di log in base alle impostazioni presenti nei file di configurazione.

Per capire meglio il funzionamento (e di cosa è capace questo software) prendiamo in considerazione alcuni file di configurazione:

Apache

La particolarità di questo file di configurazione è la necessità di riavviare il servizio al termine della rotazione:

/var/log/apache2/*.log {
        weekly
        missingok
        rotate 52
        compress
        delaycompress
        notifempty
        create 640 root adm
        sharedscripts
        postrotate
                if [ -f /var/run/apache2.pid ]; then
                        /etc/init.d/apache2 restart > /dev/null
                fi
        endscript
}

Aptitude

/var/log/aptitude {
  rotate 6
  monthly
  compress
  missingok
  notifempty
}

munin-node

/var/log/munin/munin-node.log {
        daily
        missingok
        rotate 7
        compress
        copytruncate
        notifempty
        create 640 root adm
}

Definizione di una rotazione personalizzata

Elenco Opzioni

Strumenti personali
Namespace
Varianti
Azioni
Navigazione
Risorse
Strumenti