4 069
contributi
Riga 72: | Riga 72: | ||
</pre> | </pre> | ||
Si possono notare i files di log attualmente in uso ('''access.log''' e '''error.log'''), i files di log del giorno precedente ('''access.log.1''' e '''error.log.1''') e i files dei giorni ancora precedenti, che di default vengono compressi e conservati per cinque settimane. | Si possono notare i files di log attualmente in uso ('''access.log''' e '''error.log'''), i files di log del giorno precedente ('''access.log.1''' e '''error.log.1''') e i files dei giorni ancora precedenti, che di default vengono compressi e conservati per cinque settimane. | ||
Logrotate può essere schedulato utilizzando <cron>. La directory '''/etc/cron.daily''' contiene infatti gli script che vengono eseguiti automaticamente ogni giorno dal sistema. Qui si può trovare lo script di logrotate. Ogni giorno questo script, al momento dell'esecuzione, esamina due cose: | |||
# il file di configurazione <tt>/etc/logrotate.conf</tt> | |||
Logrotate | # la directory di configurazione <tt>/etc/logrotate.d</tt> | ||
Questa directory contiene i files di configurzione per i servizi installati sul server. Per esempio sul server esaminato in precedenza troveremo il file <tt>/etc/logrotate.d/apache2</tt>.<br/> | |||
/etc/cron.daily | Un tipico file di configurazione di logrotate è simile a questo: | ||
<pre> | |||
/var/log/apache2/*.log { | /var/log/apache2/*.log { | ||
weekly | weekly | ||
missingok | missingok | ||
rotate 52 | rotate 52 | ||
compress | compress | ||
delaycompress | delaycompress | ||
notifempty | notifempty | ||
create 640 root adm | create 640 root adm | ||
sharedscripts | sharedscripts | ||
postrotate | postrotate | ||
if [ -f /var/run/apache.pid ]; then | if [ -f /var/run/apache.pid ]; then | ||
/etc/init.d/apache restart > /dev/null | /etc/init.d/apache restart > /dev/null | ||
fi | fi | ||
endscript | endscript | ||
} | } | ||
</pre> | |||
Analizziamolo nel dettaglio: | |||
# <tt>/var/log/apache2/*.log</tt> indica i files che vengono interessati dal processo. | |||
# <tt>weekly</tt>: i files sono rotati ogni settimana. Alternativa: daily | |||
# <tt>rotate nn</tt>: saranno conservati non più di nn files | |||
# <tt>compress</tt>: i files saranno compressi con gzip. Alternativa: nocompress | |||
# <tt>delaycompress</tt>: non comprime i log del giorno prima. | |||
/var/log/apache2/*.log | # <tt>notifempty</tt>: non esegue la rotazione se il file è vuoto. Alternativa: ifempty | ||
# <tt>create xx user group</tt>: | |||
o If we have to create the new file give it the given mode, owner, and group. | o If we have to create the new file give it the given mode, owner, and group. | ||
* sharedscripts | * sharedscripts |