UNPKG

@bitrix/logger

Version:
75 lines (57 loc) 1.42 kB
'use strict'; function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } const envLevel = typeof process.env.LOGGER_LEVEL === 'string' ? parseInt(process.env.LOGGER_LEVEL) : null; class Logger { static setLevel(level) { if (typeof envLevel !== 'number') { if (typeof level === 'number') { Logger.level = level; } } } static log(...args) { if (Logger.level >= Logger.LOG) { console.log(...args); } } static info(...args) { if (Logger.level >= Logger.INFO) { console.info(...args); } } static warn(...args) { if (Logger.level >= Logger.WARN) { console.warn(...args); } } static error(...args) { if (Logger.level >= Logger.ERROR) { console.error(...args); } } static debug(...args) { if (Logger.level >= Logger.DEBUG) { console.log('[debug]:', ...args); } } } _defineProperty(Logger, "NONE", 0); _defineProperty(Logger, "LOG", 1); _defineProperty(Logger, "INFO", 2); _defineProperty(Logger, "WARN", 3); _defineProperty(Logger, "ERROR", 4); _defineProperty(Logger, "DEBUG", 5); _defineProperty(Logger, "level", typeof envLevel === 'number' ? envLevel : Logger.ERROR); module.exports = Logger;