PHP 8.4.3 Released!

openlog

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

openlogОткрывает соединение к системному средству журналирования

Описание

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

Функция openlog() открывает соединение к системному средству журналирования для программы.

Вызов функции openlog() необязателен. Функция вызовется функцией syslog() автоматически, если потребуется, при этом параметр prefix по умолчанию будет равен пустой строке.

Список параметров

prefix

Строка prefix добавляется к каждому сообщению.

flags

Битовая маска из следующих констант:

facility

Аргумент facility указывает тип программы, которая зарегистрировала сообщение журнала. Это разрешает указать в файле конфигурации, что сообщения от разных объектов будут обрабатываться по-разному. Параметр принимает значение в виде константы из следующего списка:

Замечание: Системы Windows игнорируют этот параметр.

Возвращаемые значения

Функция возвращает логическое значение true.

Список изменений

Версия Описание
8.2.0 Теперь функция при кажом вызове возвращает true. Раньше функция возвращала false, если возникла ошибка.

Смотрите также

  • syslog() - Генерирует сообщение для системного журнала
  • closelog() - Закрывает соединение с системным журналом

Добавить

Примечания пользователей 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