syslog

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

syslogГенерирует сообщение для системного журнала

Описание

syslog(int $priority, string $message): true

Функция syslog() генерирует сообщение, которое направляется в системный журнал.

Информацию о настройке пользовательского обработчика журнала даёт страница руководства Unix syslog.conf (5). Подробнее о возможностях и параметрах syslog рассказывают страницы команды man для syslog (3) на Unix-машинах.

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

priority

Параметр priority — комбинация типа и уровня. Возможные значения:

Приоритеты syslog() (по убыванию)
Константа Описание
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.

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

  • openlog() - Открывает соединение к системному журналу
  • closelog() - Закрывает соединение с системным журналом
  • syslog.filter Настройка INI (начиная с PHP 7.3)