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)