parent
2c5e455446
commit
417b3c81a6
@ -0,0 +1,58 @@ |
|||||||
|
var gray = require('ansi-gray') |
||||||
|
const winston = require('winston') |
||||||
|
var timestamp = require('time-stamp') |
||||||
|
var supportsColor = require('color-support') |
||||||
|
|
||||||
|
function hasFlag (flag) { |
||||||
|
return ((typeof (process) !== 'undefined') && (process.argv.indexOf('--' + flag) !== -1)) |
||||||
|
} |
||||||
|
|
||||||
|
function addColor (str) { |
||||||
|
if (hasFlag('no-color')) { |
||||||
|
return str |
||||||
|
} |
||||||
|
|
||||||
|
if (hasFlag('color')) { |
||||||
|
return gray(str) |
||||||
|
} |
||||||
|
|
||||||
|
if (supportsColor()) { |
||||||
|
return gray(str) |
||||||
|
} |
||||||
|
|
||||||
|
return str |
||||||
|
} |
||||||
|
function getTimestamp () { |
||||||
|
return '[' + addColor(timestamp('HH:mm:ss')) + ']' |
||||||
|
} |
||||||
|
// create winston logger format
|
||||||
|
const logFmt = winston.format.printf((info) => { |
||||||
|
return `${getTimestamp()} ${info.level}: ${info.message}` |
||||||
|
}) |
||||||
|
|
||||||
|
class Log { |
||||||
|
constructor () { |
||||||
|
this.logger = winston.createLogger({ |
||||||
|
level: 'error', |
||||||
|
transports: [new winston.transports.Console()], |
||||||
|
format: winston.format.combine( |
||||||
|
winston.format.colorize({ all: true }), |
||||||
|
logFmt |
||||||
|
) |
||||||
|
}) |
||||||
|
} |
||||||
|
setVerbosity (v) { |
||||||
|
this.logger.configure({ |
||||||
|
level: v, |
||||||
|
transports: [new winston.transports.Console()], |
||||||
|
format: winston.format.combine( |
||||||
|
winston.format.colorize({ all: true }), |
||||||
|
logFmt |
||||||
|
) |
||||||
|
}) |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
module.exports = { |
||||||
|
Log |
||||||
|
} |
Loading…
Reference in new issue