UNPKG

lugg

Version:

A simple logging module that uses pino and draws inspiration from TJ Hollowaychuk's debug.

42 lines (34 loc) 795 B
var names, skips; exports.update = function() { exports.parse(process.env.DEBUG || ''); }; exports.parse = function(str) { names = []; skips = []; str.split(/[\s,]+/).forEach(function(pattern) { exports.add(pattern); }); }; exports.enabled = function(name) { var skipped = skips.some(function(re) { return re.test(name); }); if (skipped) return false; return names.some(function(re) { return re.test(name); }); }; exports.add = function(pattern, enabled) { pattern = pattern.replace(/\*/g, '.*?'); if (enabled === undefined) { if (pattern[0] === '-') { enabled = false; pattern = pattern.substr(1); } else { enabled = true; } } (enabled ? names : skips).push(new RegExp('^' + pattern + '$')); }; exports.update();