UNPKG

@zlattice/lattice-js

Version:

Lattice blockchain TypeScript SDK with dual module support (CJS + ESM)

54 lines 1.8 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.log = void 0; exports.configureLogger = configureLogger; exports.getLogger = getLogger; exports.createChildLogger = createChildLogger; const pino_1 = __importDefault(require("pino")); // Default options const defaultOptions = { level: process.env.LOG_LEVEL || "info", // trace, debug, info, warn, error, fatal timestamp: pino_1.default.stdTimeFunctions.isoTime, formatters: { level: (label) => ({ level: label }) } }; // Singleton logger instance let logger = (0, pino_1.default)(defaultOptions, pino_1.default.transport({ target: "@jvddavid/pino-rotating-file", options: { path: "./logs", pattern: "log-%Y-%M-%d-%N.log", maxSize: 1024 * 1024 * 10, sync: false, fsync: false, append: true, mkdir: true } })); // Initialize or reconfigure logger function configureLogger(options) { logger = (0, pino_1.default)({ ...defaultOptions, ...options }); return logger; } // Get current logger instance function getLogger() { return logger; } // Shortcut logging methods exports.log = { trace: (msg, ...args) => logger.trace(msg, ...args), debug: (msg, ...args) => logger.debug(msg, ...args), info: (msg, ...args) => logger.info(msg, ...args), warn: (msg, ...args) => logger.warn(msg, ...args), error: (msg, ...args) => logger.error(msg, ...args), fatal: (msg, ...args) => logger.fatal(msg, ...args) }; // Create child logger (supports context) function createChildLogger(context) { return logger.child(context); } //# sourceMappingURL=logger.js.map