Configurazione Asterisk 1.6.0.X - logger.conf

Versione adatta alla stampa

Nel file logger.conf è dove si configurano tutti i registri delle attività di Asterisk

Per configurarlo apriamo il file con un editor:

nano /etc/asterisk/logger.conf

[general]

dateformat=%F %T

; formato ISO 8601 per le date

appendhostname = yes

; se vogliamo che ogni file di registro termini con il nome del dominio, dobbiamo attivare questo parametro

queue_log = yes
; con queue_log si definisce se si vuole avere o no un registro di tutto quello che avviene nelle liste di attesa (predefinito è yes)

queue_log_name = queue_log

; Il nome del file dove si registreranno gli eventi delle liste di attesa (predefinito queue_log)

; I files con i log (registri) possono diventare abbastanza grandi e rendere abbastanza scomoda la consulta. Per evitare questo tipo di problema, è possibile usare il programma logrotate. Con il parametro che segue`si definisce il modo in cui vanno ruotati i files

rotatestrategy = rotate

; Con questa configurazione i files più vecchi avranno un numero sequenziale più alto.

event_log = yes

; Come modo predefinito, Asterisk registra in un file gli eventi generici

;a partire da questo punto, inizia la parte dedicata alla definizione di ciò che si vuole registrare in ogni file (includendo la console di Asterisk)

[logfiles]
;
; In ogni file si possono registrare i seguenti tipi di eventi:
; debug
; notice
; warning
; error

; verbose
; dtmf
;
; Quella che segue è una una buona configurazione standard dei registri:

debug > debug
console => notice,warning,error,debug,dtmf
messages => notice,warning
full => error

; Nella console di Asterisk appariranno i seguenti eventi: notizie, avvisi, errori, debug e i toni dtmf inviati.

; nel file messages le notizie,gli avvisi e il debug

; Nel file full solamente gli errori

Si salvano le modifiche e si passa alla definizione delle politiche di rotazione dei files di registro. Per definire queste politiche bisogna installare il programma logrotate, che si usa per questo tipo di compito.

yum install logrotate

Dopo averlo installato si crea un file dove si definisce come devono ruotare i files

nano /etc/logrotate.d/asterisk

Se copiano queste linee:

/var/log/asterisk/messages
/var/log/asterisk/full {
missingok
rotate 7
daily
postrotate
/usr/sbin/asterisk -rx 'logger reload' > /dev/null 2> /dev/null
endscript
}

/var/log/asterisk/queue_log {
missingok
rotate 5
size=100k
postrotate
/usr/sbin/asterisk -rx 'logger reload'> /dev/null 2> /dev/null
endscript
}

Il primo blocco definisce la rotazione per il file messages e il file full. La rotazione sarà giornaliera e si creeranno un massimo di 7 files sequenziali (messages.1, messages.2, ecc.) Il più vecchio avrà un numero sequenziale più alto. Effettuata la rotazione (postrotate) si attualizzerà la configurazione del file logger.conf in Asterisk.

Il secondo blocco definisce la politica di rotazione del file di registro queue_log. In questo caso il file ruoterà quando raggiungerà la grandezza di 100 Kbyte. Si creeranno un massimo di 5 files sequenziali.

Per testare il file di configurazione creato, il procedimento è:

cd /etc/logrotate.d

logrotate -fv asterisk

La risposta sarà:

reading config file asterisk
reading config info for /var/log/asterisk/messages
/var/log/asterisk/full
reading config info for /var/log/asterisk/queue_log

Handling 2 logs

rotating pattern: /var/log/asterisk/messages
/var/log/asterisk/full forced from command line (7 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/asterisk/messages
log /var/log/asterisk/messages does not exist—skipping
considering log /var/log/asterisk/full
log /var/log/asterisk/full does not exist—skipping
not running postrotate script, since no logs were rotated
not running postrotate script, since no logs were rotated

rotating pattern: /var/log/asterisk/queue_log forced from command line (5 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/asterisk/queue_log
log needs rotating
rotating log /var/log/asterisk/queue_log, log->rotateCount is 5
renaming /var/log/asterisk/queue_log.5 to /var/log/asterisk/queue_log.6 (rotatecount 5, logstart 1, i 5),
old log /var/log/asterisk/queue_log.5 does not exist
renaming /var/log/asterisk/queue_log.4 to /var/log/asterisk/queue_log.5 (rotatecount 5, logstart 1, i 4),
old log /var/log/asterisk/queue_log.4 does not exist
renaming /var/log/asterisk/queue_log.3 to /var/log/asterisk/queue_log.4 (rotatecount 5, logstart 1, i 3),
old log /var/log/asterisk/queue_log.3 does not exist
renaming /var/log/asterisk/queue_log.2 to /var/log/asterisk/queue_log.3 (rotatecount 5, logstart 1, i 2),
old log /var/log/asterisk/queue_log.2 does not exist
renaming /var/log/asterisk/queue_log.1 to /var/log/asterisk/queue_log.2 (rotatecount 5, logstart 1, i 1),
renaming /var/log/asterisk/queue_log.0 to /var/log/asterisk/queue_log.1 (rotatecount 5, logstart 1, i 0),
old log /var/log/asterisk/queue_log.0 does not exist
log /var/log/asterisk/queue_log.6 doesn’t exist—won’t try to dispose of it
renaming /var/log/asterisk/queue_log to /var/log/asterisk/queue_log.1
running postrotate script

Per applicare i cambi appena effettuati, entriamo nella console di Asterisk:

asterisk -rvvvvvvvvvvvvvv

e scriviamo:

CLI> logger reload

Condividi contenuti