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

Параметр принимает значение в виде константы из следующего списка: LOG_EMERG, LOG_ALERT, LOG_CRIT, LOG_ERR, LOG_WARNING, LOG_NOTICE, LOG_INFO, LOG_DEBUG constants

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)