Tabella del contenuto
Come ruotare i log in Linux?
Prima di tutto dobbiamo controllare che logrotate sia installato sul server o meno. Gestiremo i file di log usando logrotate.
Questo metodo può essere usato anche in Centos 6. Tutti i comandi sono gli stessi e anche il processo è lo stesso.
Come controllare che logrotate sia installato ?
whereis logrotate
Se logrotate manca, allora installatelo usando il seguente comando. Salta questo passo se è già installato.
yum update && yum install logrotate
Modifica il file httpd.conf
vim /etc/httpd/conf/httpd.confinclude /etc/logrotate.d
Modifica il file log rotate per il server apache
cd /etc/logrotate.d/httpd/var/log/httpd/*log {missingoknotifemptysharedscriptsdelaycompresspostrotate/bin/systemctl reload httpd.service > /dev/null 2>/dev/null || trueendscript}/var/www/html/logs/*.log {dailyrotate 3size 10Mcompressdelaycompresspostrotate/bin/systemctl reload httpd reload > /dev/null 2>/dev/null || trueendscript}
Controlla il log
cosa succederà se logrotate viene eseguito ora. Prova ad usare l’opzione -d (puoi effettivamente eseguire logrotate omettendo questa opzione):
logrotate -d /etc/logrotate.d/apache2.conf
Logrotate Termini importanti.
Rotare il log significa che dopo un periodo di tempo i vecchi log vengono zippati nel file. Questo ci aiuta a mantenere i log in modo molto efficace.
missingok – non genera errore se il file di log manca
notifempty – non ruota il file di log se è vuoto
compress – Le vecchie versioni dei file di log sono compresse con gzip(1) per default
size – Il file di log è ruotato solo se cresce più di 20k
daily – assicura una rotazione giornaliera
create – crea un nuovo file di log con permessi 600 dove proprietario e gruppo è l’utente root
copy – Fa una copia del file di log, ma non modifica affatto l’originale.
mail <email@address> – Quando un log viene messo fuori uso, viene spedito all’indirizzo.
olddir <directory> – I log sono spostati in <directory> per la rotazione.
postrotate/endscript – Le linee tra postrotate e endscript sono eseguite dopo il log