Класс CakeLog
Записывает сообщения в настроенные адаптеры логов.
Один или несколько адаптеров могут быть настроены с помощью методов CakeLogs.
Настройка адаптеров логов
Вы можете настроить адаптеры логов в файле вашей приложения bootstrap.php. Пример конфигурации:
CakeLog::config('my_log', array('engine' => 'File')); Для получения более подробной информации см. документацию по CakeLog::config().
Запись в лог
Запись в лог выполняется с помощью CakeLog::write(). Для получения дополнительной информации см. документацию.
Уровни логирования
По умолчанию CakeLog поддерживает все уровни логирования, определенные в RFC 5424. При записи сообщений вы можете использовать именованные методы или соответствующие константы с write():
CakeLog::error('Something horrible happened');
CakeLog::write(LOG_ERR, 'Something horrible happened'); Если вам необходимы пользовательские уровни логирования, вы можете использовать CakeLog::levels() для добавления дополнительных уровней логирования.
Логические области
При записи сообщений и конфигурировании адаптеров логов можно указать «области», которые будут обрабатывать логгер. Области можно рассматривать как подсистемы в вашем приложении, которым могут потребоваться разные настройки ведения логов. Например, в приложении электронной коммерции вы можете по-разному обрабатывать ошибки, записанные в подсистемах корзины и оформления заказов, по сравнению с остальной частью приложения. Используя области, вы можете контролировать ведение логов для каждой части приложения и при этом сохранять стандартные уровни логов.
Дополнительную информацию об областях см. в CakeLog::config() и CakeLog::write().
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/logging.html#logging
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Расположение: Cake/Log/CakeLog.php
Краткое описание свойств
- Класс LogEngineCollection
-
arrayУровни логов по умолчанию, подробно описанные в RFC 5424 http://tools.ietf.org/html/rfc5424
- Сопоставленные уровни логов
array - Активные уровни логов для этого экземпляра.
array
Краткое описание методов
- Инициализация ObjectCollection
- Метод-обёртка для записи сообщений об оповещениях
-
Настройка и добавление нового потока ведения логов в CakeLog. Вы можете добавить логгеры из app/Log/Engine, используя app.loggername, или из любого плагина/Log/Engine, используя plugin.loggername.
- Возвращает имена ключей текущих активных потоков
- Метод-обёртка для записи критических сообщений
- Метод-обёртка для записи отладочных сообщений
- Сброс уровней логов до исходного значения
-
Отключение потока. Отключение потока предотвратит получение им каких-либо сообщений до его повторного включения.
-
Удаляет поток из активных потоков. После удаления потока ему больше не будут отправляться сообщения.
- Метод-обёртка для записи критических сообщений
-
Включение потока. Потоки, которые ранее были отключены, могут быть повторно включены с помощью этого метода.
- Проверяет, включен ли $streamName
- Метод-обёртка для записи сообщений об ошибках
- Метод-обёртка для записи информационных сообщений
- Получение/установка уровней логов
- Метод-обёртка для записи уведомлений
- Получение движка ведения логов из активных потоков.
- Метод-обёртка для записи предупреждений
-
Записывает заданное сообщение и тип во все настроенные адаптеры логов. Настроенные адаптеры получают как переменную $type, так и $message. $type — это одна из следующих строк/значений.
Подробное описание методов
alert()source public static
alert( string $message , string|array $scope array() )
Метод-обёртка для записи сообщений об оповещениях
Параметры
- строка
$message - сообщение лога
- строка/массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение лога. Дополнительную информацию о логических областях см. в CakeLog::config().
Возвращает
booleanУспех
config()source public static
config( string $key , array $config )
Настройка и добавление нового потока ведения логов в CakeLog. Вы можете добавить логгеры из app/Log/Engine, используя app.loggername, или из любого плагина/Log/Engine, используя plugin.loggername.
Использование:
CakeLog::config('second_file', array(
'engine' => 'File',
'path' => '/var/logs/my_app/'
)); Это настройка экземпляра FileLog для использования указанного пути. Все опции, которые не engine передаются в адаптер ведения логов и обрабатываются там. Любой класс может быть настроен как адаптер ведения логов, если он реализует методы в CakeLogInterface.
Уровни логов
При настройке логгеров можно задать, какие уровни логов будет обрабатывать логгер. Это позволяет, например, отключить отладочные сообщения в рабочей среде:
CakeLog::config('default', array(
'engine' => 'File',
'path' => LOGS,
'levels' => array('error', 'critical', 'alert', 'emergency')
)); В данном случае логгер будет записывать только сообщения об ошибках и более высоких уровнях. Все остальные сообщения логов будут игнорироваться.
Логические области
При настройке логгеров можно определить активные области, для которых предназначен логгер. Если определены только перечисленные области, они будут обрабатываться логгером. Если вы не определяете никаких областей, адаптер будет перехватывать все области, соответствующие обработанным уровням.
CakeLog::config('payments', array(
'engine' => 'File',
'types' => array('info', 'error', 'warning'),
'scopes' => array('payment', 'order')
)); Этот логгер будет перехватывать только записи логов, созданные в областях payment и order. Все остальные области, включая неопределённую область, будут игнорироваться. Важно помнить, что при использовании областей необходимо также определить types сообщений логов, которые будет обрабатывать логгер. В противном случае логгер будет перехватывать все сообщения логов, даже если область неверна.
Параметры
- строка
$key Имя ключа для этого логгера, используемое для его последующего удаления.
- массив
$config - Массив конфигурационных данных для логгера
Возвращает
booleanУспех конфигурации.
Исключения
CakeLogExceptionСсылка
http://book.cakephp.org/2.0/ru/core-libraries/logging.html#creating-and-configuring-log-streamsconfigured()source public static
configured( )
Возвращает имена ключей текущих активных потоков
Возвращает
массивМассив настроенных потоков логов.
critical()source public static
critical( string $message , string|array $scope array() )
Метод для записи сообщений об аварийных ситуациях.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
debug()source public static
debug( string $message , string|array $scope array() )
Метод для записи отладочных сообщений.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
defaultLevels()source public static
defaultLevels( )
Сброс уровней журнала до исходного значения.
Возвращает
массивУровни журнала по умолчанию
disable()source public static
disable( string $streamName )
Отключить поток. Отключение потока предотвратит получение сообщения этим потоком журнала до его повторного включения.
Параметры
- строка
$streamName - для отключения
Выбрасывает
CakeLogExceptiondrop()source public static
drop( string $streamName )
Удаляет поток из активных потоков. После удаления потока сообщения в него больше не будут отправляться.
Параметры
- строка
$streamName - Имя ключа настроенного потока для удаления.
emergency()source public static
emergency( string $message , string|array $scope array() )
Метод для записи сообщений об чрезвычайных ситуациях.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
enable()source public static
enable( string $streamName )
Включить поток. Потоки, которые были ранее отключены, могут быть повторно включены с помощью этого метода.
Параметры
- строка
$streamName - для включения
Выбрасывает
CakeLogExceptionenabled()source public static
enabled( string $streamName )
Проверяет, включен ли $streamName.
Параметры
- строка
$streamName - для проверки
Возвращает
booleanВыбрасывает
CakeLogExceptionerror()source public static
error( string $message , string|array $scope array() )
Метод для записи сообщений об ошибках.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
info()source public static
info( string $message , string|array $scope array() )
Метод для записи информационных сообщений.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
levels()source public static
levels( array $levels array() , boolean $append true )
Получение/установка уровней журнала
Вызовите этот метод без аргументов, например: CakeLog::levels() для получения текущей конфигурации уровня.
Чтобы добавить дополнительные уровни 'user0' и 'user1' к уровням журнала по умолчанию:
CakeLog::levels(array('user0, 'user1'));
// or
CakeLog::levels(array('user0, 'user1'), true); результат:
array(
0 => 'emergency',
1 => 'alert',
...
8 => 'user0',
9 => 'user1',
); Чтобы установить/заменить существующую конфигурацию, передайте массив со вторым аргументом, установленным в false.
CakeLog::levels(array('user0, 'user1'), false); результат:
array(
0 => 'user0',
1 => 'user1',
); Параметры
- массив
$levelsнеобязательно массив() - массив
- boolean
$appendнеобязательно true - true для добавления, false для замены
Возвращает
массивАктивные уровни журнала
notice()source public static
notice( string $message , string|array $scope array() )
Метод для записи информационных сообщений.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
stream()source public static
stream( string $streamName )
Получает движок ведения журнала из активных потоков.
Параметры
- строка
$streamName - Имя ключа настроенного потока для получения.
Возвращает
смешанноеэкземпляр BaseLog или false, если не найден
См.
BaseLogwarning()source public static
warning( string $message , string|array $scope array() )
Метод для записи предупреждающих сообщений.
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
write()source public static
write( integer|string $type , string $message , string|array $scope array() )
Записывает заданное сообщение и тип во все настроенные адаптеры журналов. Настроенные адаптеры передаются как $type, так и $message переменные. $type — это одна из следующих строк/значений.
Типы:
- LOG_EMERG => 'emergency',
- LOG_ALERT => 'alert',
- LOG_CRIT => 'critical',
-
LOG_ERR=> 'error', -
LOG_WARNING=> 'warning', -
LOG_NOTICE=> 'notice', -
LOG_INFO=> 'info', -
LOG_DEBUG=> 'debug',
Использование:
Запись сообщения в журнал 'warning':
CakeLog::write('warning', 'Stuff is broken here');
Параметры
- целое число|строка
$type Тип сообщения, записываемого в журнал. Когда значение является целым числом или строкой, соответствующей распознанным уровням, оно будет обрабатываться как уровни журналов. В противном случае оно обрабатывается как область.
- строка
$message - Содержание сообщения для записи в журнал
- строка|массив
$scopeнеобязательно массив() Область(и), в которой создаётся сообщение журнала. Для получения дополнительной информации о областях ведения журнала см. CakeLog::config().
Возвращает
booleanУспех
Ссылка
http://book.cakephp.org/2.0/en/core-libraries/logging.html#writing-to-logsПодробное описание свойств
$_defaultLevelssource
protected static array
Уровни регистрации по умолчанию, подробно описанные в RFC 5424 http://tools.ietf.org/html/rfc5424
В Windows меньше уровней, поэтому notice, info и debug совпадают. https://bugs.php.net/bug.php?id=18090
array(
'emergency' => LOG_EMERG,
'alert' => LOG_ALERT,
'critical' => LOG_CRIT,
'error' => LOG_ERR,
'warning' => LOG_WARNING,
'notice' => LOG_NOTICE,
'info' => LOG_INFO,
'debug' => LOG_DEBUG,
)
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/2.9/class-CakeLog.html