UNPKG

@8select/strulo

Version:

Log messages in a structured format.

66 lines (53 loc) 1.96 kB
'use strict'; exports.__esModule = true; exports.emergency = exports.alert = exports.critical = exports.error = exports.warning = exports.notice = exports.info = exports.debug = undefined; var _debug = require('debug'); var _debug2 = _interopRequireDefault(_debug); var _logLevels = require('./log-levels'); var _message = require('./message'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var logFunctions = Object.keys(_logLevels.logLevels).reduce(buildLogFunctionPerLogLevel, {}); var debug = exports.debug = function debug(message) { logFunctions.debug(message); }; var info = exports.info = function info(message) { logFunctions.info(message); }; var notice = exports.notice = function notice(message) { logFunctions.notice(message); }; var warning = exports.warning = function warning(message) { logFunctions.warning(message); }; var error = exports.error = function error(message) { logFunctions.error(message); }; var critical = exports.critical = function critical(message) { logFunctions.critical(message); }; var alert = exports.alert = function alert(message) { logFunctions.alert(message); }; var emergency = exports.emergency = function emergency(message) { logFunctions.emergency(message); }; function buildLogFunctionPerLogLevel(previousObjectWithLogFunctions, currentLogLevel) { var _Object$assign; return Object.assign(previousObjectWithLogFunctions, {}, (_Object$assign = {}, _Object$assign[(0, _logLevels.getLevelName)(currentLogLevel).toLowerCase()] = log(currentLogLevel), _Object$assign)); } function log(level) { var logger = (0, _debug2.default)((0, _logLevels.getLevelName)(level)); return function (message) { logger((0, _message.formatMessage)(level, message)); }; } exports.default = { debug: debug, info: info, notice: notice, warning: warning, error: error, critical: critical, alert: alert, emergency: emergency };