Класс CakeLog
Записывает сообщения в настроенные адаптеры логов. Один или несколько адаптеров могут быть настроены с помощью методов CakeLogs. Если вы не настроите адаптеры, и будете записывать в лог, по умолчанию будет автоматически настроен FileLog.
Настройка адаптеров логов
Вы можете настроить адаптеры логов в вашем приложении в файле 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() для получения дополнительной информации о областях логирования.
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT License
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/logging.html#logging
Расположение: Cake/Log/CakeLog.php
Подробное описание методов
alertsource public static
alert( string $message , string|array $scope array() )
Удобный метод для записи сообщений об оповещениях
Параметры
- строка
$message - сообщение в лог
- строка|массив
$scopeнеобязательно массив() - Область(и) создания сообщения в лог. См. CakeLog::config() для получения дополнительной информации о областях логирования.
Возвращает
booleanУспех
configsource 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Успех конфигурации.
Возбуждает
CakeLogExceptionCakeLogException
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/logging.html#creating-and-configuring-log-streamsconfiguredsource public static
configured( )
Возвращает имена ключей текущих активных потоков
Возвращает
arrayМассив настроенных потоков логов.
criticalsource public static
critical( string $message , string|array $scope array() )
Удобный метод для записи критических сообщений
Параметры
- строка
$message - сообщение в лог
- строка|массив
$scopeнеобязательно массив() - Область(и) создания сообщения в лог. См. CakeLog::config() для получения дополнительной информации о областях логирования.
Возвращает
booleanУспех
debugsource public static
debug( string $message , string|array $scope array() )
Удобный метод для записи сообщений отладки
Параметры
- строка
$message - сообщение в лог
- строка|массив
$scopeнеобязательно массив() - Область(и) создания сообщения в лог. См. CakeLog::config() для получения дополнительной информации о областях логирования.
Возвращает
booleanУспех
defaultLevelssource public static
defaultLevels( )
Сбросить уровни логирования до исходных значений
Возвращает
arrayУровни логирования по умолчанию
disablesource public static
disable( string $streamName )
Отключить поток. Отключение потока предотвратит получение сообщений этим потоком, пока он не будет снова включен.
Параметры
- строка
$streamName - для отключения
Возбуждает
CakeLogExceptionCakeLogException
dropsource public static
drop( string $streamName )
Удаляет поток из активных потоков. После удаления поток больше не будет получать сообщения.
Параметры
- строка
$streamName - Имя ключа настроенного потока для удаления.
emergencysource public static
emergency( string $message , string|array $scope array() )
Удобный метод для записи сообщений об экстренных ситуациях
Параметры
- строка
$message - сообщение в лог
- строка|массив
$scopeнеобязательно массив() - Область(и) создания сообщения в лог. См. CakeLog::config() для получения дополнительной информации о областях логирования.
Возвращает
booleanУспех
enablesource public static
enable( string $streamName )
Включить поток. Потоки, которые были ранее отключены, могут быть включены повторно с помощью этого метода.
Параметры
- строка
$streamName - для включения
Возбуждает
CakeLogExceptionCakeLogException
enabledsource public static
enabled( string $streamName )
Проверяет, включен ли $streamName
Параметры
- строка
$streamName - для проверки
Возвращает
booleanbool
Возбуждает
CakeLogExceptionCakeLogException
errorsource public static
error( string $message , string|array $scope array() )
Метод для удобного протоколирования сообщений об ошибках
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательный массив() - Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.
Возвращает
booleanУспех
infosource public static
info( string $message , string|array $scope array() )
Удобный метод для протоколирования информационных сообщений
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательный массив() - Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.
Возвращает
booleanУспех
levelssource 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необязательный массив() - массив
- логическое значение
$appendнеобязательный true - true для добавления, false для замены
Возвращает
arrayАктивные уровни журналов
noticesource public static
notice( string $message , string|array $scope array() )
Удобный метод для протоколирования сообщений о замечаниях
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательный массив() - Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.
Возвращает
booleanУспех
streamsource public static
stream( string $streamName )
Получение движка ведения журнала из активных потоков.
Параметры
- строка
$streamName - Имя ключа настроенного потока для получения.
Возвращает
mixedэкземпляр BaseLog или false, если не найден
См. также
BaseLogwarningsource public static
warning( string $message , string|array $scope array() )
Удобный метод для протоколирования предупреждений
Параметры
- строка
$message - сообщение журнала
- строка|массив
$scopeнеобязательный массив() - Область(и), в которой создается сообщение журнала. См. CakeLog::config() для получения дополнительной информации о областях ведения журнала.
Возвращает
booleanУспех
writesource 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Резюме свойств
© 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.
http://api.cakephp.org/2.7/class-CakeLog.html