array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.syslog.php', 1 => 'syslog', ), 'up' => array ( 0 => 'ref.network.php', 1 => 'Сетевые функции', ), 'prev' => array ( 0 => 'function.socket-set-timeout.php', 1 => 'socket_set_timeout', ), 'next' => array ( 0 => 'book.rrd.php', 1 => 'RRD', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/network/functions/syslog.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
syslog — Генерирует сообщение для системного журнала
Функция 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
Отсылаемое сообщение.
Функция всегда возвращает true
.
Пример #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 служба syslog эмулируется, используя журнал событий (Event Log).
Замечание:
Использование значений с
LOG_LOCAL0
поLOG_LOCAL7
для параметраfacility
в функции openlog() недоступно в Windows.