(PHP 4, PHP 5, PHP 7)
syslog — Генерирует сообщение для системного журнала
$priority
, string $message
) : boolФункция syslog() генерирует сообщение, которое направляется в системный журнал.
По поводу информации по установке пользовательского обработчика сообщений журнала см. Unix руководство в части syslog.conf (5). Дополнительную информацию по функционалу syslog можно получить с помощью man для syslog (3) на Unix-машинах.
priority
Параметр priority
- это комбинация типа и уровня. Возможными значениями являются:
Константа | Описание |
---|---|
LOG_EMERG |
система непригодна |
LOG_ALERT |
необходимы незамедлительные меры |
LOG_CRIT |
критические условия |
LOG_ERR |
условия ошибки |
LOG_WARNING |
условия предупреждения |
LOG_NOTICE |
нормальные, но значительное условие |
LOG_INFO |
информационное сообщение |
LOG_DEBUG |
сообщение отладки |
message
Отсылаемое сообщение, за исключением того, что два символа %m будут заменены строкой сообщения об ошибке (strerror), соответствующей текущему значению errno.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Пример #1 Пример использования syslog()
<?php
// открыть syslog, включить в сообщение ID процесса, также отправить
// сообщение, и использовать определенный пользователем
// механизм журналирования
openlog("myScriptLog", LOG_PID | LOG_PERROR, LOG_LOCAL0);
// некий код
if (authorized_client()) {
// что-нибудь сделать
} else {
// неавторизованный клиент!
// отправить сообщение журнала о попытке
$access = date("Y/m/d H:i:s");
syslog(LOG_WARNING, "Неавторизованный клиент: $access {$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
}
closelog();
?>
На Windows NT служба syslog эмулируется, используя журнал событий (Event Log).
Замечание:
Использование значений с LOG_LOCAL0 по LOG_LOCAL7 для параметра
facility
в функции openlog() недоступно в Windows.