syslog

Il syslog e' il demone standard a cui vengoni indirizzati tutti i messaggi di sistema.
La sua configurazione e' semplice e consente il logging/debugging degli eventi legati al sistema operativo Unix/Linux.

Introduzione

Il syslog e' il principale standard per il logging dei messaggi di sistema. E' nato su Unix (per il sendmail) ma e' stato implementato su molti altri sistemi operativi ed e' ora lo standard di fatto per il logging sistemistico.

Oltre che su Unix/Linux tipicamente viene utilizzato il syslog anche dalle periferiche di rete intelligenti come router, switch, ...

Nella configurazione di default i messaggi vengono semplicemente accodati su un file, tuttavia e' possibile indirizzare alcuni messaggi a

Priorita'

La priorita' dei messaggi su syslog e' indicata come una coppia facility.level.

Facility identifica la tipologia di applicazione o di messaggio. Le facility definite sono: auth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, syslog, user, uucp, local0..local7.

Level identifica il livello di gravita' del messaggio: Emergency, Alert, Critical, Error, Warning, Notice, Info, Debug. E' anche definito il livello None che indica nessun messaggio.

La priorita' viene utilizzata dal syslog per determinare la destinazione del messaggio.

logger

Le applicazioni utente o quelle del sistema operativo inviano messaggi al syslog mediante la chiamata syslog()... ma non tutti scrivono in C!
Per inviare un messaggio al syslog da shell e' utilizzabile un semplice comando:

# logger -p local3.info Messaggio di prova

Nell'esempio viene inviato un messaggio al syslog di livello info sulla facility local3 (una delle 8 disponibili come localX).

Configurazione

Il file di configurazione del syslog varia a seconda delle implementazioni (eg. /etc/syslog.conf /etc/rsyslog.d/XXX.conf ) ma il contenuto e' analogo: ogni riga contiene una selezione dei messaggi ed una relativa azione. Nella selezione viene riportata la coppia facility.level indicando che TUTTI i level a partire da quello indicato vanno trattati. Nell'azione puo' essere indicato un nome di file, un host a cui ridigere i messaggi (indicato con @ ), un programma (indicato con | ) o un utente.

In una tipica configurazione vengono ignorati i messaggi di debug e gli altri messaggi vengono rediretti su due file:

*.info;authpriv.none                /var/log/messages
authpriv.*                          /var/log/secure

Per inviare i messaggi piu' critici ad syslog esterno e' sufficiente inserire la riga:

*.warn                		@central_syslog

Varie

L'implementazione del syslog varia da sistema a sistema ed ha avuto una notevole evoluzione nel tempo. In questo documento sono stati riportati elementi generali... per eventuali dettagli e' necessario fare riferimento alla documentazione relativa al sistema utilizzato.


Titolo: syslog
Livello: Medio (2/5)
Data: 1 Aprile 2015
Versione: 1.0.0 - 1 Aprile 2015
Autore: mail [AT] meo.bogliolo.name