Bookmark and Share
Document Actions

Configurazioni logrotate automatiche
medio

Come creare automaticamente una configurazione logrotate automaticamente lanciando il proprio buildout.

Introduzione

Lo scopo di questo tutorial è quello di far generare automaticamente una configurazione per logrotate utilizzando buildout, evitando così di:

  • effettuare manualmente noiose configurazioni
  • commettere errori

Utilizzare logrotate consente di evitare che i log crescano troppo determinando uno spreco di spazio su disco.

Prerequisiti

In questa guida supponiamo di avere nel nostro buildout uno zeo server ed una serie di zeo client seguendo una ben precisa convenzione di nomi, così da rendere automatizzabile la procedura.

Passo passo

La convenzione che abbiamo adottato richiede che lo Zeo server sia definito in una sezione [zeo] e tutti gli Zeo client sono definiti in sezioni del tipo [instance*].

Ecco qui di seguito la configurazione del nostro buildout.cfg (in grassetto le parti da aggiungere).

[buildout]
...
parts =
    ...
    logrotate

[zeo]
recipe = plone.recipe.zope2zeoserver
...

[instance01]
...

[instance02]
...

[logrotate]
recipe = collective.recipe.template
input = templates/logrotate.conf
output = ${buildout:directory}/etc/logrotate.conf

Questa configurazione inoltre presuppone la presenza di un file da utilizzare come template per la generazione automatica. Crea una cartella chiamata templates e metti all'interno un file chiamato logrotate.conf con il seguente contenuto:

rotate 4
weekly
create
compress
delaycompress

${buildout:directory}/var/log/zeo.log {
    postrotate
        ${buildout:directory}/bin/zeo logreopen
    endscript
}

# Zope instances
${buildout:directory}/var/log/instance*.log {
    postrotate
        for i in ${buildout:directory}/var/instance*.pid ; do
            /bin/kill -USR2 $(cat $i)
        done
    endscript
}

Lanciando lo script buildout otterrai nella cartella etc all'interno del nostro buildout il risultato con la configurazione creata in automatico e pronta per essere utilizzata, determinando così un risparmio in termini di tempo.

 

by Davide Moro last modified 2009-01-15 18:38
 

Supporto

Ottieni un
aiuto veloce e mirato sul forum, gratis!

partecipa al forum

 

Segui le icone

 

Livelli di difficoltà

livello guruSolo per i "guru"!
livello avanzatoPer configuratori e sviluppatori
livello medioPer chi ha già familiarità
livello basePer tutti!

 

I video

video

Il documento è supportato da un video!