(PHP 4, PHP 5, PHP 7)
syslog — Генерирует сообщение для системного журнала
$priority
, string $message
)Функция 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 эмулируется используя Журнал Событий.
Замечание:
Использование значений с LOG_LOCAL0 по LOG_LOCAL7 для параметра
facility
в функции openlog() недоступно в Windows.