UNPKG

@cloudquery/plugin-sdk-javascript

Version:

This is the high-level package to use for developing CloudQuery plugins in JavaScript

31 lines 1.28 kB
import { createLogger as createWinstonLogger, format, transports } from 'winston'; import { fullFormat, shortFormat } from 'winston-error-format'; export var LogLevel; (function (LogLevel) { LogLevel["trace"] = "trace"; LogLevel["debug"] = "debug"; LogLevel["info"] = "info"; LogLevel["warn"] = "warn"; LogLevel["error"] = "error"; })(LogLevel || (LogLevel = {})); export var LogFormat; (function (LogFormat) { LogFormat["json"] = "json"; LogFormat["text"] = "text"; })(LogFormat || (LogFormat = {})); export const createLogger = (level, logFormat) => { // Winston doesn't have a TRACE level, so we need to normalize it to DEBUG. const normalizedLevel = level === LogLevel.trace ? LogLevel.debug : level; const consoleFormat = format.printf(({ level, message, timestamp }) => { return `[${timestamp}] ${level} ${message}`; }); const logger = createWinstonLogger({ level: normalizedLevel, format: logFormat == LogFormat.json ? format.combine(fullFormat(), format.timestamp(), format.json()) : format.combine(shortFormat(), format.timestamp(), format.colorize(), consoleFormat), transports: [new transports.Console()], }); return logger; }; //# sourceMappingURL=logger.js.map