Логирование
Логи - важная часть процесса работы приложения. Они позволяют как разобраться с поведением программы при написании, так и выявить проблемы при непрерывной работе системы.
В нашей платформе глобальный объект console переопределён.
Best practicies
- В начале серверного кода задаём область логирования
var console = global.console.fork ? // если глобальный объект консоли переопределён
global.console.fork('Core.Cls') : // указываем пространство логирования. В общем случае - Namespace.ClassName
global.console; // если не переопределён - ничего не делаем (изолированный запуск модуля, например в тестах)
- В клиентском коде внутри классов доступен метод log у самого класса
this.log. Область логирования при этом соответствует имени класса автоматически.
console.log - обычное логирование
console.warn - предупреждение
console.error - ошибка
/* Тэги задаются как #camelCaseWord и служат для дальнейшей фильтрации сообщений в логгере */
/** ВАЖНО: системные события должны содержать в себе настоящий объект с данными для последующей обработки */
console.log('#money, #input', {amount: 20})
Logger App
При старте платформы стартует приложение просмотра логов на порту 7777. В нём можно как просматривать и фильтровать сообщения, так и получить параметры командной строки для ограничения вывода логов в консоль по установленным фильтрам.