umbot
Version:
Мультиплатформенный фреймворк для создания голосовых навыков и чат-ботов с единой бизнес-логикой. Встроенная поддержка ВКонтакте, Telegram, Viber, MAX, Яндекс Алисы, Маруси и Сбера SmartApp. Архитектура на адаптерах позволяет подключать любые другие платф
48 lines (47 loc) • 1.94 kB
TypeScript
/**
* Тип метода для логирования
*/
export type TLoggerCb = (message: string, meta?: Record<string, unknown>) => void;
/**
* Интерфейс для своей реализации логики логирования
*/
export interface ILogger {
/**
* Метод для логирования информации
*/
log?: (...args: unknown[]) => void;
/**
* Метод для логирования ошибок
* @param message
* @param meta
*/
error?: TLoggerCb;
/**
* Метод для логирования предупреждений
* @param message
* @param meta
*/
warn?: TLoggerCb;
/**
* Метод для логирования метрик
* @param name - имя метрики
* @param value - значение метрики
* @param labels - Дополнительная информация
*/
metric?: (name: string, value: unknown, labels?: Record<string, unknown>) => void;
/**
* Включает или отключает автоматическую маскировку секретов (паролей, токенов,
* ключей API и т.д.) во всех сообщениях лога.
*
* @default true (маскировка включена)
*
* @example
* // Отключить маскировку (только для отладки!)
* setLogger(customLogger, { maskSecrets: false });
*
* @remarks Устанавливайте `false` ТОЛЬКО в безопасных окружениях (локальная отладка,
* изолированный тестовый стенд). В production отключение маскировки
* может привести к утечке конфиденциальных данных в логи.
*/
maskSecrets?: boolean;
}