/etc/syslog.conf

Le fichier /etc/syslog.conf permet de configurer le démon de logging syslog, il permet de déterminer de quel manière sont traités les différents logs systèmes.

Ce fichier associe pour chaque source de log, quel est la destination des messages. Les messages sont aussi traité selon leur priorité.

Syntaxe

Chaque ligne est divisée en 2 parties: le sélecteur et l'action. Le sélecteur donne le type de message à laquelle la règle s'applique. L'action donne le comportement de syslog pour les messages sélectionnés. L'action la plus courante est de sauvegarder les messages dans un fichiers du dossier /var/.

Voici par exemple un extrait de fichier syslog.conf:

auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none          -/var/log/syslog
cron.*                         /var/log/cron.log
daemon.*                        -/var/log/daemon.log
daemon.*;mail.*;\
        news.crit;news.err;news.notice;\
        *.=debug;*.=info;\
        *.=notice;*.=warn       |/dev/xconsole

Deux notes supplémentaires sur la syntaxe du fichiers: les lignes débutant par le caractère dièse sont ignorées, et une ligne peut se continuer sur la ligne suivante si elle fnit par le caractère \.

Sélecteur

La première partie d'une ligne de configuration est le sélecteur. Le sélecteur est lui même divisé en deux partie: la facility et la priorité, ces deux parties sont séparées par un point.

La facility est désigne le type de message parmi les suivants: auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security (identique à auth), syslog, user, uucp et de local0 à local7. La page de manuel de syslog dans la section 3 décrit l'ensemble des facility.

La priorité donne la priorité du message parmi la liste suivante (par ordre croissant): debug, info, notice, warning (ou warn), error (ou err), crit, alert, emerg, panic. Tout les messages de priorités supérieures ou égale à la priorité donnée sont sélectionnées pour l'action.

Il est possible d'utiliser le caractère étoile: "*" pour la facility ou la priorité afin de sélectionner l'ensemble des valeurs.

Action

L'action fournit la destination des messages filtrés à l'aide du sélecteurs. Il existe 6 actions possibles pour les logs, nous verrons ici les trois les plus courante: l'enregistrement dans un fichier, la redirection vers une console, la redirection vers un autre ordinateur.

Fichier

Pour rediriger les logs vers un fichiers, l'action est simplement le chemin vers le fichier.

Une possibilité supplémentaire est de ne pas synchroniser l'écriture du fichier avec la réception des logs.Pour ce faire, il suffit de faire précéder le chemin du fichier par le caractère moins. Ne pas synchroniser les messages permet d'augmenter les performances, en revanche les messages présent dans les tampons sont perdu si la machine crash.

Voici deux exemples d'écriture dans un fichier, la second ligne utilise des écritures non synchronisées avec les messages.

auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none          -/var/log/syslog

Redirection vers la console

Pour rediriger les messages vers une console, il suffit de donner le chemin vers le descripteur de fichier du terminal.

Voici par exemple la redirection des messages liés au serveur mail sur le terminal 8:

mail.*       /dev/tty8

Hôte distant

Il est aussi possible de rediriger les messages vers un démon de journalisation sur un autre ordinateur. Cela permet de centraliser les journaux systèmes mais ce n'est pas une solution sûre en l'état car les messages ne sont pas cryptés.

Pour rediriger les logs vers un autre serveurs de log il faut donner l'adresse ou le nom d'hôte précédé du caractère arobase.

Voici par exemple comment rediriger tout les messages vers l'hôte fictif example.com

*.*                          @example.com

Notez que les déporter les logs sur un hôte distant n'est pas sécurisé.

Page de manuel

Le page de manuel de syslog.conf décrit le format du fichier mais c'est n'est pas la seule source de documentation sur syslog. La page de manuel de sysklogd donne des informations sur le démon syslog. Cette dernière page de manuel décrit les différences de syntaxe entre les révisions de syslog et décrit l'utilisation de la journalisation déportée (pour stocker les journaux systèmes sûr une autre station).

Finalement, pour les développeurs, il existe des pages de manuel décrivant la programmation avec syslog et des appels systèmes utilisés par syslog.