Crea sito

ICT Officine Informatiche Roma

ICT SERVICES ROMA

LA MANUTENZIONE DEI LOG TRAMITE LOGROTATE

Una delle principali competenze di un sysadmin, è sicuramente la capacità di comprendere i file di log. Questi possono essere considerati la bussola da seguire, per scoprire eventuali malfunzionamenti del sistema. Dopo le guide su systemctl e sulla gestione dei servizi, oggi continuiamo il percorso nella sistemistica GNU/Linux esplorando le opzioni di logrotate.

Logrotate e la rotazione dei log

I vari demoni di sistema registrano in appositi file gli eventi degni di nota per futura memoria. Nelle moderne distribuzioni i programmi più diffusi per questo scopo sono journald e rsyslogd. Come è facile intuire, la dimensione dei file di log è direttamente proporzionale alla frequenza e alla verbosità delle registrazioni chiamate dai processi. Serve quindi un qualcosa per manutenerli, evitando così la saturazione di intere partizioni.

Per effettuare la rotazione dei file di registro, è stato creato un apposito programma chiamato logrotate. Configurarlo ci permette di automatizzare una serie di operazioni quali la compressione dei file di registro o la rimozione delle loro versioni obsolete. Le direttive per il suo funzionamento generale sono contenute, come suole, nel file /etc/logrotate.conf.

Riassumiamo le principali istruzioni:

  • dailyweeklymonthly: indicano i tempi di rotazione;

  • rotate n: specifica il numero n di copie dei file di log che devono essere mantenute in una successione di rotazioni. Il file n+1 esimo sarà cancellato;

  • create: crea un nuovo file di log vuoto al termine della rotazione;

  • compress: comprime le vecchie versioni del file di log tramite gzip;

  • prerotatepostrotate: per eseguire dei comandi precedentemente o successivamente una rotazione.

Il file contenente le direttive specifiche per ciascun servizio è invece /etc/logrotate.d. Ad esempio su Linux Mint, se vado a studiare la rotazione dei log del servizio mintupdate, l’output sarà il seguente:

/var/log/mintupdate.log {
  rotate 12
  monthly
  compress
  missingok		// se il file di registro è assente non genera errore
  notifempty		// non effettua la rotazione se il file è vuoto
  nocreate		
}

Come sempre, per una trattazione puntuale della sintassi e di tutte le opzioni possibili, basterà fare riferimento all’apposita pagina del manuale che torna sempre utile ai sysadmin: man logrotate.

 

Translate »
×

Benvenuto !

Fai clic su uno dei nostri specialisti elencati di seguito per avviare una chat di supporto su WhatsApp o inviaci un'e-mail a helpdesk [email protected]

You are Wellcome !

Click one of our helpdesk specialist below to start a chat on WhatsApp or send us an email to [email protected]

 

× HELPDESK