Jesus · Bible · HTML · CSS · JS · PHP · SVG · Applications

openlog

Description

Open connection to system logger

Syntax

openlog(
    string $prefix,
    int $flags,
    int $facility
): bool

Parameters

prefix

The string prefix is added to each message.

flags

The flags argument is used to indicate what logging options will be used when generating a log message.

ConstantDescription
LOG_CONSif there is an error while sending data to the system logger, write directly to the system console
LOG_NDELAYopen the connection to the logger immediately
LOG_ODELAY(default) delay opening the connection until the first message is logged
LOG_PERRORprint log message also to standard error
LOG_PIDinclude PID with each message

You can use one or more of these options. When using multiple options you need to OR them, i.e. to open the connection immediately, write to the console and include the PID in each message, you will use: LOG_CONS | LOG_NDELAY | LOG_PID

facility

The facility argument is used to specify what type of program is logging the message. This allows you to specify (in your machine's syslog configuration) how messages coming from different facilities will be handled.

ConstantDescription
LOG_AUTHsecurity/authorization messages (use LOG_AUTHPRIV instead in systems where that constant is defined)
LOG_AUTHPRIVsecurity/authorization messages (private)
LOG_CRONclock daemon (cron and at)
LOG_DAEMONother system daemons
LOG_KERNkernel messages
LOG_LOCAL0 ... LOG_LOCAL7reserved for local use, these are not available in Windows
LOG_LPRline printer subsystem
LOG_MAILmail subsystem
LOG_NEWSUSENET news subsystem
LOG_SYSLOGmessages generated internally by syslogd
LOG_USERgeneric user-level messages
LOG_UUCPUUCP subsystem

Note: LOG_USER is the only valid log type under Windows operating systems

Return

Returns true on success or false on failure.

Examples

1 · prefix flags facility

<?

$prefix = "myprefix";
$flags = LOG_PID | LOG_PERROR;
$facility = LOG_USER;

$return = openlog($prefix, $flags, $facility);

    var_export($return);

closelog();

?>
true

2 · facility

<?

$facilities =
[
    LOG_AUTH,
    LOG_AUTHPRIV,
    LOG_CRON,
    LOG_DAEMON,
    LOG_KERN,
    LOG_LOCAL0,
    LOG_LOCAL1,
    LOG_LOCAL2,
    LOG_LOCAL3,
    LOG_LOCAL4,
    LOG_LOCAL5,
    LOG_LOCAL6,
    LOG_LOCAL7,
    LOG_LPR,
    LOG_MAIL,
    LOG_NEWS,
    LOG_SYSLOG,
    LOG_USER,
    LOG_UUCP,
];

for($i = 0; $i < count($facilities); ++$i)
{
    $prefix = "myprefix";
    $flags = LOG_PID | LOG_PERROR;
    $facility = $facilities[$i];

    openlog($prefix, $flags, $facility);

        $priority = LOG_ERR;
        $message = "$facility: message";

        $return = syslog($priority, $message);

        echo $facility . PHP_EOL;

    closelog();
}

?>
32
80
72
24
0
128
136
144
152
160
168
176
184
48
16
56
40
8
64
HomeMenu