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));
}
}
?>openlog
(PHP 4, PHP 5, PHP 7, PHP 8)
openlog — Open connection to system logger
Description
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
prefixis added to each message. flags-
Bitmask of the following constants:
facility-
The
facilityargument 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:LOG_AUTHLOG_AUTHPRIVLOG_CRONLOG_DAEMONLOG_KERNLOG_LOCAL[0-7]LOG_LPRLOG_MAILLOG_NEWSLOG_SYSLOGLOG_USERLOG_UUCP
Note: This parameter is ignored on Windows.
Return Values
Always returns true.