It's a console logger inherited from abstract-logger.
npm install terminal-logger




Terminal-logger prints the message to the console.
All logs are done against STDERR, letting you stdout for meaningfull
value and redirection, should you need to generate output this way.
* Customize colorful status
* Single-line update
* table supports
``js
logger = require('terminal-logger')('test')
//change the logging level.
logger.level = 'info'
logger
.write()
.status.info('Doing something')
.status('info','Doing something same')
.status.force('Forcing filepath %s', 'some path')
.status.conflict('on %s', 'model.js')
.status.ok('good')
.status.error('sth error')
.status.create(logger.table([['a:', 213], ['b:', 111]]))
.write()
.tick('<-This is ok')
.cross('<-this is a wrong cross flag')
logger.log({
message: '${name} - ${status}: Hi here ${title}'
, title: 'Today Title'
, status: 'ok'
})
`
the result:
Single-line update:
`coffee`
log = require('terminal-logger/lib/single-line')('test')
log.level = 'info'
dash = '>'
singleLineLog = ->
dash = dash.replace('>', '->')
log.status("info", "update:", dash)
dash = '>' if dash.length > 60
setTimeout(singleLineLog, 500)
singleLineLog()
the result:
+ add the emergency/alert/critical/error/warning/notice/info/debug/trace(message[, context], args...) methods:logger.status[xxx]
* these are same as . (v0.2.3)status(aStatus, aMessage, ...)
+ add the logging level supports
- broken: remove the predefined status as its logging method utility
+ add and statusstatus` methods
+ add customizable colors and statusLevels
+ the default colors(map the status or level to color):
* skip: 'magenta'
* force: 'yellow'
* create: 'green'
* invoke: 'bold'
* conflict: 'red'
* identical: 'cyan'
* ok: 'green'
* emergency: ['red', 'bold']
* alert: 'red'
* critical: 'red'
* error: 'red'
* warning: 'yellow'
* notice: 'gray'
* info: 'gray'
* debug: 'blue'
* trace: 'blue'
* '✔': 'green'
* '✗': 'red'
* name: 'blue' # it's NOT the status, it's just the logger name's color.
+ the default statusLevels(map the status to logging level):
* skip: 'warning'
* force: 'warning'
* create: 'notice'
* invoke: 'notice'
* conflict: 'error'
* identical: 'error'
* ok: 'notice'
* '✔': 'notice'
* '✗': 'error'
MIT