Урок 8. Дополнительные возможности
В данном уроке рассматриваются:
Поиск по шаблону
Универсальный фильтр
Работа с файлами
Точки расширений
Проектное переопределение кода
Шаблоны thymeleaf
Логирование
Мониторинг производительности
SSH-сервис сервера приложений
Локализация приложений
Миграция данных
7. Логирование
Для логирования существует сразу несколько инструментов:
-
Логирование через
Btk_Log
Использует специальную коллекцию переменной ссылочности
Btk_Log
и пишет данные в базу. Для логирования коллекция подключается как обычно, после чего доступны для использования методы вставки записей через обычные транзакции или автономные -
Логирование сервера приложений
Использует
Logger
сервера для вывода информации в консоль. Для логирования есть методыtrace
,debug
,info
,warn
иerror
, которые сохраняют в консоли сервера переданные сообщения с соответствующим уровнем.Пример использования –
_logger.info("Пересчет регистра прав ролей")
-
Логирование в инфо-панель
Использует
InfoLog
приложения для записи информации в лог сообщений. Для вывода сообщений создано отображениеBtk_InfoLogAvi#Default
, которое принято выводить на отдельной панели для основной выборки приложения в нижней части. Для логирования есть методыinfo
,warn
,error
иconfirm
, которые сохраняют в логере переданные сообщения с соответствующим уровнем.Пример использования –
application.infoLog.error("Отмена загрузки файла")
Пример открытия инфо-панели –
val vMaster = application.mainSelection if (vMaster.form.findSelection(Btk_InfoLogAvi.default()) == null) { vMaster.createPanelBuilder(Btk_InfoLogAvi.default()).align(Align.bottom).toggle() }
Вручную инфо-панель можно открыть/закрыть из меню
Сервис -> Открыть информационную панель
-
Логирование действий пользователя
Используется для отслеживания процесса выполнения запросов и подстановки параметров, последовательности вызова операций и открытия форм.
Руководство разработчика: Отладка приложений # Логирование на сторону клиента