Spec-Zone.ru › CakePHP 2.8

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

Пакет: Cake\Журнал
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/logging.html#logging
Авторское право: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: Лицензия MIT
Расположение: Cake/Log/CakeLog.php

Краткое описание свойств

  • $_Collection protected static
    LogEngineCollection
    Класс LogEngineCollection
  • $_defaultLevels protected static
    array

    Уровни журналов по умолчанию, как подробно описано в RFC 5424 http://tools.ietf.org/html/rfc5424

  • $_levelMap protected static
    array
    Сопоставленные уровни журналов
  • $_levels protected static
    array
    Активные уровни журналов для этого экземпляра.

Краткое описание методов

  • _init() protected static
    Инициализировать ObjectCollection
  • alert() public static
    Метод для записи сообщений об оповещениях
  • config() public static

    Настроить и добавить новый поток регистрации в CakeLog. Вы можете использовать логгеры из app/Log/Engine, используя app.loggername, или любой плагин/Log/Engine, используя plugin.loggername.

  • configured() public static
    Возвращает имена ключей текущих активных потоков
  • critical() public static
    Метод для записи критических сообщений
  • debug() public static
    Метод для записи сообщений отладки
  • defaultLevels() public static
    Сбросить уровни журналов до исходных значений
  • disable() public static

    Отключить поток. Отключение потока предотвратит получение этого потоком любых сообщений до его повторного включения.

  • drop() public static

    Удаляет поток из активных потоков. После удаления потока сообщения в него больше не будут отправляться.

  • emergency() public static
    Метод для записи сообщений об аварийных ситуациях
  • enable() public static

    Включить поток. Потоки, которые были ранее отключены, могут быть повторно включены с помощью этого метода.

  • enabled() public static
    Проверяет, включен ли $streamName
  • error() public static
    Метод для записи сообщений об ошибках
  • info() public static
    Метод для записи информационных сообщений
  • levels() public static
    Получение/установка уровней журналов
  • notice() public static
    Метод для записи уведомлений
  • stream() public static
    Получение компонента ведения журнала из активных потоков.
  • warning() public static
    Метод для записи предупреждающих сообщений
  • write() public static

    Записывает заданное сообщение и тип во все настроенные адаптеры журналов. Настроенные адаптеры получают как $type, так и $message. $type — это одна из следующих строк/значений.

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

_init()source protected static

_init( )

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

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-streams

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

Выбрасывает

CakeLogException

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

Выбрасывает

CakeLogException

enabled()source public static

enabled( string $streamName )

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

Параметры

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

Возвращает

boolean

Выбрасывает

CakeLogException

error()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 необязательно массив()
массив
логическое значение $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, если не найдено

См. также

BaseLog

warning()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

Подробности свойств

$_Collectionsource

protected static LogEngineCollection

Коллекция LogEngine

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

$_levelMapsource

protected static array

Сопоставленные уровни регистрации

$_levelssource

protected static array

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

© 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.8/class-CakeLog.html

Spec-Zone.ru

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