PHP Conference Japan 2024

openlog

(PHP 4, PHP 5, PHP 7, PHP 8)

openlogOpen connection to system logger

Description

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

openlog() opens a connection to the system logger for a program.

The use of openlog() is optional. It will automatically be called by syslog() if necessary, in which case prefix will default to the empty string.

Parameters

prefix

The string prefix is added to each message.

flags

Bitmask of the following constants:

facility

The facility argument is used to specify what type of program is logging the message. This lets the configuration file specify that messages from different facilities will be handled differently. Must be one of the following constants:

Note: This parameter is ignored on Windows.

Return Values

Always returns true.

Changelog

Version Description
8.2.0 The function now always returns true. Previously it returned false on failure.

See Also

add a note

User Contributed Notes 1 note

up
1
Nimja
11 years ago
To those curious; switching between different facilities is NOT an issue. There is no apparent memory overhead (nor slowdown) by calling openlog multiple(12 * 10000) times.

Shown by this example:

<?php
$facilities
= array(
LOG_AUTH,
LOG_AUTHPRIV,
LOG_CRON,
LOG_DAEMON,
LOG_KERN,
LOG_LOCAL0,
LOG_LPR,
LOG_MAIL,
LOG_NEWS,
LOG_SYSLOG,
LOG_USER,
LOG_UUCP,
);

for (
$i = 0; $i < 10000; $i++) {
foreach (
$facilities as $facility) {
openlog('test', LOG_PID, $facility);
syslog(LOG_ERR, "This is a test: " . memory_get_usage(true));
}
}
?>
To Top