Звезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

Сообщения лога Yii 2

Сообщения лога

Запись сообщений лога осуществляется вызовом одного из следующих методов:

  • [[Yii::trace()]]: записывает сообщения для отслеживания выполнения кода приложения. Используется, в основном, при разработке.
  • [[Yii::info()]]: записывает сообщение, содержащее какую-либо полезную информацию.
  • [[Yii::warning()]]: записывает тревожное сообщение при возникновении неожиданного события.
  • [[Yii::error()]]: записывает критическую ошибку, на которую нужно, как можно скорее, обратить внимаение.


Эти методы позволяют записывать сообщения разных уровней важности и категорий. Они имеют одинаковое описание функции function ($message, $category = 'application'), где $message передает сообщение для записи, а $category - категорию сообщения. В следующем примере будет записано trace сообщение с категорией по умолчанию application:

Yii::trace('start calculating average revenue');

Note: Сообщение может быть как строкой так и объектом или массивом. За корректную работу с содержимым сообщения отвечают цели лога. По умолчанию, если сообщение не является строкой, оно будет приведено к строковому типу при помощи [[yii\helpers\VarDumper::export()]].

Для упрощения работы с сообщениями лога и их фильтрации, рекомендуется явно указывать подходящую категорию для каждого сообщения. Возможно использование иерархической системы именования категорий, что значительно упростит целям лога фильтрацию сообщений по категориям. Простым и эффективным способом именования категорий является использование магической PHP константы __METHOD__. Такой подход используется в ядре фреймворка Yii. Например,

Yii::trace('начало вычисления среднего дохода', __METHOD__);

Константа __METHOD__ вычисляется как имя метода (включая полное имя класса), в котором она использована. Например, её значение будет вычислено как 'app\controllers\RevenueController::calculate', если показанный выше код вызывается в соответствующем методе.

Info: методы логгирования, описанные выше являются, на самом деле, ярлыками для метода [[yii\log\Logger::log()|log()]] [[yii\log\Logger|объекта логгера]], который доступен как синглтон Yii::getLogger(). При определенном количестве записанных сообщений или завершении приложения, объект логгера вызывает [[yii\log\Dispatcher|message dispatcher]] для отправки записанных сообщений зарегистрированным целям логов.

Заберите ссылку на статью к себе, чтобы потом легко её найти ;)

Выберите, то, чем пользуетесь чаще всего:

Спасибо за внимание, оставайтесь на связи! Ниже ссылка на форум и обсуждение ; )


Обсудить эту статью

INFO: Вы отправляете сообщение как 'Гость'