openlog
(PHP 4, PHP 5, PHP 7)
openlog — Открывает соединение к системному журналу
Описание
$ident
, int $option
, int $facility
)Функция openlog() открывает для программы соединение к системному журналу.
Использование openlog() не является обязательным. Эта функция при необходимости будет вызвана функцией syslog() автоматически, при этом параметр ident
будет по умолчанию равен FALSE
.
Список параметров
-
ident
-
Строка
ident
добавляется к каждому сообщению. -
option
-
Аргумент
option
используется для указания используемых опций журналирования при создании записи журнала.Опции openlog() Constant Description LOG_CONS
если при отправке данных системному журналу происходит ошибка, перевести вывод непосредственно в системную консоль LOG_NDELAY
открыть соединение с журналом без задержки LOG_ODELAY
(по умолчанию) отложить открытие соединения до вывода первого сообщения в журнал LOG_PERROR
выводить вместе со стандартной ошибкой сообщение журнала LOG_PID
добавить PID к каждому сообщению -
facility
-
Параметр
facility
используется для определения типа программы создавшей сообщение журнала. Это позволяет определить (в конфигурации syslog) как будут обработаны сообщения журнала, поступающие из разных объектов.openlog() Facilities Константа Описание LOG_AUTH
сообщения по безопасности/авторизации (необходимо взамен использовать LOG_AUTHPRIV
в системах, где эта константа предопределена)LOG_AUTHPRIV
сообщения по безопасности/авторизации (частное) LOG_CRON
планировщик задач (cron и at) LOG_DAEMON
другие системные службы LOG_KERN
сообщения ядра LOG_LOCAL0
...LOG_LOCAL7
зарезервированы для локального использования, не доступны в Windows LOG_LPR
подсистема печати LPR LOG_MAIL
почтовая подсистема LOG_NEWS
подсистема новостей USENET LOG_SYSLOG
внутренние сообщения syslogd LOG_USER
общие сообщения на уровне пользователя LOG_UUCP
подсистема UUCP Замечание:
LOG_USER
единственный верный тип журналирования в операционных системах Windows
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Смотрите также
- syslog() - Генерирует сообщение для системного журнала
- closelog() - Завершает соединение с системным журналом
- checkdnsrr
- closelog
- define_syslog_variables
- dns_check_record
- dns_get_mx
- dns_get_record
- fsockopen
- gethostbyaddr
- gethostbyname
- gethostbynamel
- gethostname
- getmxrr
- getprotobyname
- getprotobynumber
- getservbyname
- getservbyport
- header_register_callback
- header_remove
- header
- headers_list
- headers_sent
- http_response_code
- inet_ntop
- inet_pton
- ip2long
- long2ip
- openlog
- pfsockopen
- setcookie
- setrawcookie
- socket_get_status
- socket_set_blocking
- socket_set_timeout
- syslog
Коментарии
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));
}
}
?>
In second parameter int $option, PI means Process ID (PID).
That is the unique number given to that process. For eg [30326]