Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
SYSLOG(3)		   Linux Programmer's Manual		     SYSLOG(3)

NAME
       closelog, openlog, syslog - send	messages to the	system logger

SYNOPSIS
       #include	<syslog.h>

       void openlog(const char *ident, int option, int facility);
       void syslog(int priority, const char *format, ...);
       void closelog(void);

       #include	<stdarg.h>

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

DESCRIPTION
       closelog() closes the descriptor	being used to write to the system log-
       ger.  The use of	closelog() is optional.

       openlog() opens a connection to the system logger for a	program.   The
       string  pointed to by ident is prepended	to every message, and is typi-
       cally set to the	program	name.  The  option  argument  specifies	 flags
       which  control  the operation of	openlog() and subsequent calls to sys-
       log().  The facility argument establishes a default to be used if  none
       is  specified  in  subsequent calls to syslog().	 Values	for option and
       facility	are given below.  The use of openlog() is  optional;  it  will
       automatically  be  called by syslog() if	necessary, in which case ident
       will default to NULL.

       syslog()	generates a log	message, which will  be	 distributed  by  sys-
       logd(8).	 The priority argument is formed by ORing the facility and the
       level values (explained below).	The remaining arguments	are a  format,
       as  in  printf(3) and any arguments required by the format, except that
       the two character sequence %m will be replaced  by  the	error  message
       string strerror(errno).	A trailing newline is added when needed.

       The function vsyslog() performs the same	task as	syslog() with the dif-
       ference that it takes a set of arguments	which have been	obtained using
       the stdarg(3) variable argument list macros.

PARAMETERS
       This  section  lists  the  parameters used to set the values of option,
       facility, and priority.

   option
       The option argument to openlog()	is an OR of any	of these:

       LOG_CONS
	      Write directly to	system console if  there  is  an  error	 while
	      sending to system	logger.

       LOG_NDELAY
	      Open  the	 connection  immediately  (normally, the connection is
	      opened when the first message is logged).

       LOG_NOWAIT
	      Don't wait for child processes that may have been	created	 while
	      logging the message.  (The GNU C library does not	create a child
	      process, so this option has no effect on Linux.)

       LOG_ODELAY
	      The converse of LOG_NDELAY; opening of the connection is delayed
	      until syslog() is	called.	 (This is the default, and need	not be
	      specified.)

       LOG_PERROR
	      (Not in SUSv3.) Print to stderr as well.

       LOG_PID
	      Include PID with each message.

   facility
       The facility argument is	used to	specify	what type of program  is  log-
       ging  the  message.  This lets the configuration	file specify that mes-
       sages from different facilities will be handled differently.

       LOG_AUTH
	      security/authorization  messages	(DEPRECATED  Use  LOG_AUTHPRIV
	      instead)

       LOG_AUTHPRIV
	      security/authorization messages (private)

       LOG_CRON
	      clock daemon (cron and at)

       LOG_DAEMON
	      system daemons without separate facility value

       LOG_FTP
	      ftp daemon

       LOG_KERN
	      kernel messages

       LOG_LOCAL0 through LOG_LOCAL7
	      reserved for local use

       LOG_LPR
	      line printer subsystem

       LOG_MAIL
	      mail subsystem

       LOG_NEWS
	      USENET news subsystem

       LOG_SYSLOG
	      messages generated internally by syslogd

       LOG_USER	(default)
	      generic user-level messages

       LOG_UUCP
	      UUCP subsystem

   level
       This  determines	 the  importance  of  the message.  The	levels are, in
       order of	decreasing importance:

       LOG_EMERG
	      system is	unusable

       LOG_ALERT
	      action must be taken immediately

       LOG_CRIT
	      critical conditions

       LOG_ERR
	      error conditions

       LOG_WARNING
	      warning conditions

       LOG_NOTICE
	      normal, but significant, condition

       LOG_INFO
	      informational message

       LOG_DEBUG
	      debug-level message

       The function setlogmask(3) can be used to restrict logging to specified
       levels only.

CONFORMING TO
       The  functions  openlog(), closelog(), and syslog() (but	not vsyslog())
       are specified in	SUSv2 and POSIX	1003.1-2001.  POSIX 1003.1-2001	speci-
       fies  only  the	LOG_USER and LOG_LOCAL*	values for facility.  However,
       with the	exception of LOG_AUTHPRIV and LOG_FTP, the other facility val-
       ues  appear  on	most Unix systems.  The	LOG_PERROR value for option is
       not specified by	POSIX 1003.1-2001, but is available in	most  versions
       of Unix.

HISTORY
       A  syslog  function  call appeared in BSD 4.2.  BSD 4.3 documents open-
       log(), syslog(),	closelog(), and	setlogmask().  4.3BSD-Reno also	 docu-
       ments  vsyslog().   Of  course  early v*	functions used the _varargs.h_
       mechanism, which	is not compatible with _stdarg.h_.

NOTES
       The parameter ident in the call of openlog() is probably	stored	as-is.
       Thus,  if  the  string  it  points  to  is  changed, syslog() may start
       prepending the changed string, and if the string	it points to ceases to
       exist,  the  results  are  undefined.  Most portable is to use a	string
       constant.

       Never pass a string with	user-supplied data as a	format,	use
	      syslog("%s", string);
       instead.

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

Linux				  2002-01-03			     SYSLOG(3)

NAME | SYNOPSIS | DESCRIPTION | PARAMETERS | CONFORMING TO | HISTORY | NOTES | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=syslog&sektion=3&manpath=Red+Hat+Linux%2fi386+9>

home | help