Spec-Zone.ru › CakePHP 2.7

Класс 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() для получения дополнительной информации о областях логирования.

Пакет: Cake\Log
Авторские права: 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

Подробное описание методов

_initsource protected static

_init( )

инициализировать ObjectCollection

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
Успех конфигурации.

Возбуждает

CakeLogException
CakeLogException

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/logging.html#creating-and-configuring-log-streams

configuredsource 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
для отключения

Возбуждает

CakeLogException
CakeLogException

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
для включения

Возбуждает

CakeLogException
CakeLogException

enabledsource public static

enabled( string $streamName )

Проверяет, включен ли $streamName

Параметры

строка $streamName
для проверки

Возвращает

boolean
bool

Возбуждает

CakeLogException
CakeLogException
END_OF_DOCUMENT_MARKER

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, если не найден

См. также

BaseLog

warningsource 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

Резюме свойств

$_Collectionsource

protected static LogEngineCollection

Класс LogEngineCollection

$_defaultLevelssource

protected static массив

Стандартные уровни журналов, как подробно описано в RFC 5424 http://tools.ietf.org/html/rfc5424

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,
)

$_levelMapsource

protected static массив

Отображения уровней журналов

$_levelssource

protected static массив

Активные уровни журналов для этого экземпляра.

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API