Штатные функции отладки в 1С-Битрикс

13.08.2014
Запись отладочной информации в файл:
Bitrix\Main\Diag\Debug::writeToFile(array('ID' => $id, 'fields'=>$fields ),"","/debug.txt");
Bitrix\Main\Diag\Debug::dumpToFile(array('ID' => $id, 'fields'=>$fields ),"","/debug.txt");
Учет времени выполнения кода:
Bitrix\Main\Diag\Debug::startTimeLabel('test');
// some code
Bitrix\Main\Diag\Debug::endTimeLabel('test');
$result = Bitrix\Main\Diag\Debug::getTimeLabels();
var_dump($result);
Получение текущей метки времени:
Bitrix\Main\Diag\Helper::getCurrentMicrotime();
Получение стэка вызова функций.
Bitrix\Main\Diag\Helper::getBackTrace($limit = 0, $options = null);
SQL Tracker
$connection = \Bitrix\Main\Application::getInstance()->getConnectionPool()->getConnection();
$connection->startTracker($reset);
// $reset - флаг перезапуска трэкера
//some code with SQL
//$query = $rs->getTrackerQuery()->getSql();// получаем SQL-запросы в строку
$connection->stopTracker();
print_r($connection->getTracker());// вывод информации из трэкера, если нужно

Отладочная информация при помощи CDebugInfo:
$debug = new CDebugInfo();
$debug->Start();
// код
$debug->Stop();
$arDebug['run_time']   = round($debug->arResult['TIME'], 4);
$arDebug['sql_time']   = round($debug->arResult['QUERY_TIME'], 4);
$arDebug['sql_count']   = $debug->arResult['QUERY_COUNT'];

← Вернуться к списку заметок