SYSLOG


Les fichiers de trace du système se trouvent pour la plus part dans le réperoire /var/adm/. Le programme chargé de tracer certains programmes est le démon syslogd et son fichier de configuration est /etc/syslog.conf.


Le fichier de configuration /etc/syslog.conf contient des enregistrements du type :

facilité.niveauaction

Les serveurs à tracer sont des facilités où leur associés un niveau. Tout démon n'aura pas forcément une trace. En effet syslog fait intervenir des primitives qui ont pour but d'envoyer les traces vers syslogd : openlog(), syslog(), closelog().

Les facilités disponibles sont :

kernLe noyau.
userProcess des utilisateurs.
mailSystème de courrier.
daemonDémons systèmes.
authAuthentification.
lprSystème de spooling d'imprimante.
newsUsenet.
uucpUUCP.
cronDémon cron.
markMessages générés à intervals réguliers.
local0-7Huit niveaux de messages locaux.
syslogMessages internes à syslogd.
authprivMessages privés auth.
*Toutes les facilités sauf mark.

A chaque facilité est associé un niveau de trace, du plus grave au moins important :

emerg (panic)Situations de panique.
alertSituations urgentes.
critSituations critiques.
err (error)Erreurs.
warning (warn)Messages de WARNING.
noticeMessages divers.
infoMessages d'informations.
debugDébogage.

Après avoir défini une facilité et ses niveaux, il faut y ajouter une action :

fichierEcrire les traces dans fichier
@machineRediriger les traces du démon syslogd vers la machine (nom ou adresse IP)
utilisateur1[,utilisateur2,...]Envoyer les messages vers l'écran de l'utilisateur si il est connecté
*Envoyer les messages vers tous les utilisateurs connectés

Quelques programmes utilisant syslogd :

ProgrammeFacilitéNiveau
ftpddaemonerr, debug
gateddaemonalert, info
gopherdaemonerr
nameddaemonerr, info
rwhoddaemonerr, notice
ntpddaemon,usercrit, info
dateauthnotice
halt/rebootauthcrit
login/rlogindauthcrit, info
passwdautherr
suauthcrit, notice
lpdlprerr, info
nnrpdnewscrit, notice
sendmailmaildebug, alert
popperlocal0debug, notice
sudolocal2notice, alert
tcpdlocal7err, debug

syslogd relit le fichier de configuration en captant le signal SIGHUP : kill -HUP pid_syslogd

Afin de tester la configuration du fichier syslog.conf, la commande logger simule un message pour une facilité et un niveau donné (logger -p facilité.niveau message).

Par exemple pour tester si la facilité local2.info, insérée dans le fichier de configuratiion avec un fichier de trace /var/adm/syslog.local2, fonctionne correctement, il suffira de taper :

logger -p local2.info "Message dans le fichier syslog.local2"

Le message apparait alors dans le fichier /var/adm/syslog.local2, si la configuration est correcte.


Exemple :

*.=info;*.=notice/var/adm/messages
*.=debug/var/adm/debug
*.warn/var/adm/syslog.warn
mail.*/var/adm/syslog.mail
*.err/var/adm/syslog.err
*.alertod


Olivier Duval - od@alegria.fr