Jump to content

Журналирование

Журналирование неожиданных ошибок, возникших в вашем приложении или плагине это способ #1 для определения причины возникновения ошибки. Часто, правильное журналирование может сберечь вам кучу времени, которое вы могли бы потратить на воспроизведение возникшей проблемы. Основной способ ведения журналов проблем в Invision Community это класс \IPS\Log

Основное журналирование

Когда вам нужно записать непредвиденную ситуацию, вы должны использовать метод \IPS\Log::log(). Первым параметром должен быть либо экземпляр Исключения (Exception), либо строка для записи. Вторым параметром должна быть случайно выбранная "категория".

try
{
    throw new \UnexpectedValueException( 'Моё сообщение', 200 );
}
catch( \Exception $e )
{
    \IPS\Log::log( $e, 'my_app_issue'  );
    \\ Вывести сообщение об ошибке
}

Здесь информация об исключении будет записана в категорию 'my_app_issue', которую вы можете назвать как угодно. Используя уникальные коды ошибок, вы можете более легко определить, где была зарегистрирована запись в системном журнале, когда пользователь сообщает об этой проблеме администратору.

Отладочный журнал

В дополнение к основному журналированию вы также можете записывать отладочные сообщения, полезные при работе для диагностики проблем в своем приложении и в первую очередь для разработки. Определение функции такое же, как метод log(), за исключением того, что вы вызываете debug().

try
{
    throw new \UnexpectedValueException( 'Моё сообщение', 200 );
}
catch( \Exception  $e )
{
    \IPS\Log::debug( $e, 'my_app_issue'  );
    \\ Сообщение об ошибке
}

Чтобы включить запись отладочных сообщений, вам необходимо включить константу в файле constants.php.

define( 'DEBUG_LOG', true );

Затем вы можете просмотреть системные журналы в админцентре, используя фразу "System logs" в живом поиске.




Messenger

    ×
    ×
    • Create New...

    Important Information

    By using our site you agree to our Privacy Policy