VSYSLOG(3C) | Standard C Library Functions | VSYSLOG(3C) |
vsyslog - log message with a stdarg argument list
#include <syslog.h> #include <stdarg.h> void vsyslog(int priority, const char *message, va_list ap);
The vsyslog() function is identical to syslog(3C), except that it is called with an argument list as defined by <stdarg.h> rather than with a variable number of arguments.
Example 1 Use vsyslog() to write an error routine.
The following example demonstrates the use of vsyslog() in writing an error routine.
#include <syslog.h> #include <stdarg.h> /*
* error should be called like:
* error(pri, function_name, format, arg1, arg2...);
*/ void error(int pri, char *function_name, char *format, ...) {
va_list args;
va_start(args, format);
/* log name of function causing error */
(void) syslog(pri, "ERROR in %s.", function_name);
/* log remainder of message */
(void) vsyslog(pri, format, args);
va_end(args);
(void) abort( ); } main() {
error(LOG_ERR, "main", "process %d is dying", getpid()); }
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
MT-Level | Safe |
August 30, 2006 | OmniOS |