UNPKG

914 BJavaScriptView Raw
1// eslint-disable-next-line import/no-extraneous-dependencies
2const log = require('loglevel');
3// eslint-disable-next-line import/no-extraneous-dependencies
4const chalk = require('chalk');
5const prefix = require('../lib/loglevel-plugin-prefix');
6
7const colors = {
8 TRACE: chalk.magenta,
9 DEBUG: chalk.cyan,
10 INFO: chalk.blue,
11 WARN: chalk.yellow,
12 ERROR: chalk.red,
13};
14
15prefix.reg(log);
16log.enableAll();
17
18prefix.apply(log, {
19 format(level, name, timestamp) {
20 return `${chalk.gray(`[${timestamp}]`)} ${colors[level.toUpperCase()](level)} ${chalk.green(`${name}:`)}`;
21 },
22});
23
24prefix.apply(log.getLogger('critical'), {
25 format(level, name, timestamp) {
26 return chalk.red.bold(`[${timestamp}] ${level} ${name}:`);
27 },
28});
29
30log.trace('trace');
31log.debug('debug');
32log.getLogger('critical').info('Something significant happened');
33log.log('log');
34log.info('info');
35log.warn('warn');
36log.error('error');