Журналы
Смерека может протоколировать свою работу в четырех журналах. Все они записываются в подкаталог logs программного каталога Смереки.
Журнал debuglog.txt предназначен для отладки программы. Чтобы им воспользоваться, нужно установить в модуле customsettings.php переменную $DebugMode = 1 и потом в нужном месте программы вставить вызов DebugLog('Some text').
После окончания отладки следует удалить или закомментировать все вызовы DebugLog и установить $DebugMode=0. Этот журнал предназначен в основном для программистов Смереки.
Журнал errorlog.txt предназначен для отслеживания внутренних ошибок Смереки. Этот журнал не следует путать с журналом ошибок веб-сервера. Смерека записывает в этот журнал сообщения о своих собственных критических ошибках, такие как отсутствие нужного метаобъекта или выявление циклических ссылок в дереве.
Итак, если в Смереке происходит нечто непонятное, первое, что должен проверить администратор – это журнал ошибок.
Журнал sqllog.txt предназначен для трассировки запросов к базе данных. Режим трассировки задается переменной $SQLLogLevel в модуле customsettings.php. Если эта переменная равна нулю, трассировка не выполняется (рекомендуемый режим).
Если эта переменная = 1, в журнал записываются SQL операторы INSERT, UPDATE, DELETE.
Если эта переменная = 2, в журнал записываются также SQL операторы SELECT.
Этот журнал предназначен в основном для программистов во время отладки программы, в режиме постоянной эксплуатации эту трассировку следует отключить для ускорения работы.
Журнал timerlog.txt предназначен для профилирования затрат времени в Смереке. Режим профилирования задается переменной $TimerLogLevel в модуле customsettings.php. Если эта переменная равна нулю, профилирование не выполняется (рекомендуемый режим).
Если эта переменная = 1, при каждом входящем запросе в журнал записывается одна строка, которая содержит точку выхода и время (в секундах), затраченное Смерекой на достижение этой точки. Например:
Main 1054 0.134212 SmerecashPage www.m-zharkikh.name/uk/News.html 0.022517 SmerecashPage www.m-zharkikh.name/uk/ColloidSci.html 0.043600 Main 1057 0.133644 Main 1109 0.244285 Main:: CommandRedirect 1109 1.294339 Main 1110 0.730506 Main 1110 0.150956 DisplayErrPage 404 / www.m-zharkikh.name/sitemap.xml 0.073219
Этот режим предназначен для общей оценки производительности приложения.
Если эта переменная = 2, трассируются основные этапы обработки запроса, которые заканчиваются записью точки выхода. При таком режиме можно проследить, где Смерека тратит больше всего времени, и потом планировать оптимизацию кода.
Если эта переменная = 3, выполняется наиболее детальная трассировка. Этот режим можно использовать для оптимизации кода или для поиска ошибок. Если ошибка настолько серьезна, что не дает Смереке вывести стандартную страницу ошибки, последняя запись в журнале дает ориентир, в котором фрагменте кода произошел сбой. Наибольшую неприятность для Смереки составляют синтаксические ошибки в модулях, которые подключаются через аппарат метаобъектов.