Provided by: manpages-fr_1.67.0-1_all bug

NOM

       syslog,   vsyslog,   openlog,   closelog   -   Envoyer  un  message  de
       journalisation.

SYNOPSIS

       #include <syslog.h>

       void openlog (const char * ident, int option, int  facility);

       void syslog (int priority, char * format, ...);

       void closelog (void );

       #include <stdarg.h>

       void vsyslog (int priority, char  * format, va_list ap);

DESCRIPTION

       closelog()  ferme  le  descripteur  utilisé  pour  la   journalisation.
       L’utilisation de closelog() est facultative.

       openlog()  ouvre une connexion de journalisation. La chaîne pointée par
       ident sera ajoutée à chaque  message  (c’est  généralement  le  nom  du
       programme).   L’argument  option  précise  les  attributs contrôlant le
       fonctionnement de  openlog()  et  des  appels  ultérieurs  à  syslog().
       L’argument  facility  est  une  valeur  par  défaut employée lorsque ce
       paramètre n’est pas fourni lors des appels ultérieurs à syslog().   Les
       valeurs  pour  option et facility sont décrites plus bas. L’utilisation
       de openlog()  est  optionnelle.  Cette  fonction  sera  automatiquement
       invoquée  par syslog() si besoin. Dans ce cas, ident aura la valeur par
       défaut NULL.

       syslog() crée un message journalisé, qui sera distribué par syslogd(8).
       L’argument  priority  est une combinaison par OU binaire des valeurs de
       facility et de level, indiquées plus bas. Les arguments  restants  sont
       un  format,  comme celui de printf(3) et tous les arguments nécessaires
       pour ce format, sauf que les deux caractères %m seront  automatiquement
       remplacés  par  le  libellé d’erreur strerror(errno).  Un saut de ligne
       final est ajouté si besoin est.

       La  fonction  vsyslog()  réalise  la  même  tâche  que  syslog()  à  la
       différence qu’elle prend un ensemble d’arguments obtenus à l’aide de la
       macro stdarg(3) pour les listes variables d’arguments.

PARAMÈTRES

       Cette section détaille les paramètres  utilisés  pour  les  valeurs  de
       option, facility, et priority.

   option
       L’argument  option  de openlog() est un OU binaire entre les constantes
       suivantes :

       LOG_CONS
              écrire directement sur la console système s’il y  a  une  erreur
              durant la transmission.

       LOG_NDELAY
              ouvrir la connexion immédiatement (normalement, la connexion est
              ouverte quand le premier message est transmis).

       LOG_NOWAIT
              Ne pas attendre la fin des processus fils qui peuvent être créés
              lors  de  l’enregistrement  du message. La bibliothèque GlibC ne
              crée pas de processus fils, ainsi cette option  est  sans  effet
              sous Linux.

       LOG_ODELAY
              L’inverse   de  LOG_NDELAY;  l’ouverture  de  la  connexion  est
              repoussée  jusqu’à   l’invocation   de   syslog().    C’est   le
              comportement  par  défaut,  et  l’option  n’a  pas besoin d’être
              indiquée.

       LOG_PERROR
              (pas dans SUSv3) écrire sur stderr également.

       LOG_PID
              inclure le PID dans chaque message.

   facility
       L’argument facility permet d’indiquer le type du programme qui  demande
       la  journalisation  du message. Ceci permet un traitement différent des
       messages, en fonction de fichiers de configuration.

       LOG_AUTH
              message   de   sécurité/autorisation   (DÉCONSEILLÉ !   Utilisez
              LOG_AUTHPRIV à la place)

       LOG_AUTHPRIV
              message de sécurité/autorisation (privé).

       LOG_CRON
              message d’un démon horaire (cron et at)

       LOG_DAEMON
              démon du système sans classification particulière.

       LOG_FTP
              démon ftp.

       LOG_KERN
              message du noyau.

       LOG_LOCAL0 through LOG_LOCAL7
              réservé pour des utilisations locales.

       LOG_LPR
              message du sous-système d’impression.

       LOG_MAIL
              message du sous-système de courrier.

       LOG_NEWS
              message du sous-système des news USENET.

       LOG_SYSLOG
              message interne de syslogd

       LOG_USER (défaut)
              message utilisateur générique.

       LOG_UUCP
              message du sous-système UUCP.

   level
       Ceci  détermine  l’importance  du  message.  Les  niveaux, dans l’ordre
       d’importance décroissante, sont :

       LOG_EMERG
              Le système est inutilisable.

       LOG_ALERT
              Des actions doivent être entreprises immédiatement.

       LOG_CRIT
              Les conditions sont critiques.

       LOG_ERR
              Des erreurs se produisent.

       LOG_WARNING
              Des avertissement se présentent.

       LOG_NOTICE
              Condition normale, mais message significatif.

       LOG_INFO
              Message d’information simple.

       LOG_DEBUG
              Message de debugging.

       La fonction setlogmask(3)  permet  de  restreindre  l’enregistrement  à
       certains niveaux uniquement.

CONFORMITÉ

       Les  fonctions  openlog(), closelog(), et syslog() (mais pas vsyslog())
       sont mentionnées dans SUSv2 et POSIX  1003.1-2001.   POSIX  1003.1-2001
       indique  uniquement  les valeurs LOG_USER et LOG_LOCAL* pour l’argument
       facility.  Néanmoins, à l’exception de  LOG_AUTHPRIV  et  LOG_FTP,  les
       autres valeurs pour facility existent sur la plupart des systèmes Unix.
       La valeur LOG_PERROR de l’argument  option  n’est  pas  mentionnée  par
       POSIX  1003.1-2001,  mais  est  disponible dans la plupart des versions
       d’Unix.

HISTORIQUE

       Une fonction syslog est appparue  dans  BSD  4.2.   BSD  4.3  documente
       openlog(),   syslog(),   closelog(),   et   setlogmask().   4.3BSD-Reno
       documente  aussi  vsyslog().   Bien  sûr  les  premières  fonctions  v*
       utilisaient  le  mécanisme  <varargs.h>,  qui n’est pas compatible avec
       <stdarg.h>.

NOTES

       Le paramètre ident durant l’appel openlog() est généralement stocké tel
       quel.  Ainsi,  si  la  chaîne  vers  laquelle  il  pointe est modifiée,
       syslog() peut afficher la  chaîne  modifiée,  et  si  la  chaîne  cesse
       d’exister,  le résultat est indéfini.  Le comportement le plus portable
       est l’utilisation d’une chaîne constante.

       Ne jamais passer directement  une  chaîne  fournie  par  l’utilisateur,
       utilisez
              syslog (priority, "%s", chaine);
       à la place.

VOIR AUSSI

       logger(1), setlogmask(3), syslog.conf(5), syslogd(8)

TRADUCTION

       Christophe Blaess, 1996-2003.