@eventmsg/core
Version:
EventMsgV3 TypeScript library - Core protocol implementation with transport abstraction
44 lines (42 loc) • 1.41 kB
JavaScript
const require_logger = require('../types/logger.cjs');
let consola_basic = require("consola/basic");
//#region src/internal/logger.ts
let globalConsola = (0, consola_basic.createConsola)({ level: require_logger.DEFAULT_LOGGING_CONFIG.level ?? 3 });
/**
* Configure global logging
*/
function configureLogging(config) {
const finalConfig = {
...require_logger.DEFAULT_LOGGING_CONFIG,
...config
};
if (finalConfig.enabled === false) globalConsola = (0, consola_basic.createConsola)({
level: -999,
reporters: []
});
else if (finalConfig.enabled && finalConfig.level !== -999) globalConsola = (0, consola_basic.createConsola)({ level: finalConfig.level ?? 3 });
else globalConsola = (0, consola_basic.createConsola)({
level: -999,
reporters: []
});
}
/**
* Get logger for a component
*/
function getLogger(namespace) {
return globalConsola.withTag(require_logger.LOG_NAMESPACES[namespace]);
}
/**
* Simple hex dump for debugging
*/
function hexDump(data, maxBytes = 64) {
const limited = data.length > maxBytes ? data.slice(0, maxBytes) : data;
const hex = Array.from(limited).map((b) => b.toString(16).padStart(2, "0")).join(" ");
if (data.length > maxBytes) return `${hex} ... (${data.length - maxBytes} more bytes)`;
return hex;
}
//#endregion
exports.configureLogging = configureLogging;
exports.getLogger = getLogger;
exports.hexDump = hexDump;
//# sourceMappingURL=logger.cjs.map