| const levels = { |
| NONE: 0, |
| LOW: 1, |
| MEDIUM: 2, |
| HIGH: 3, |
| }; |
|
|
| let level = levels.HIGH; |
|
|
| module.exports = { |
| levels, |
| setLevel: (l) => (level = l), |
| log: { |
| parameters: (parameters) => { |
| if (levels.HIGH > level) { |
| return; |
| } |
| console.group(); |
| parameters.forEach((p) => console.log(`${p.name}:`, p.value)); |
| console.groupEnd(); |
| }, |
| functionName: (name) => { |
| if (levels.MEDIUM > level) { |
| return; |
| } |
| console.log(`\nEXECUTING: ${name}\n`); |
| }, |
| flow: (flow) => { |
| if (levels.LOW > level) { |
| return; |
| } |
| console.log(`\n\n\nBEGIN FLOW: ${flow}\n\n\n`); |
| }, |
| variable: ({ name, value }) => { |
| if (levels.HIGH > level) { |
| return; |
| } |
| console.group(); |
| console.group(); |
| console.log(`VARIABLE ${name}:`, value); |
| console.groupEnd(); |
| console.groupEnd(); |
| }, |
| request: () => (req, res, next) => { |
| if (levels.HIGH > level) { |
| return next(); |
| } |
| console.log('Hit URL', req.url, 'with following:'); |
| console.group(); |
| console.log('Query:', req.query); |
| console.log('Body:', req.body); |
| console.groupEnd(); |
| return next(); |
| }, |
| }, |
| }; |
|
|