Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

snowyu/terminal-logger.js

Open more actions menu

Repository files navigation

terminal-logger npm

Build Status Code Climate Test Coverage downloads license

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

Usage

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:

result

Single-line update:

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:

single-line-result

API

TODO

Changes

v0.2.0

  • add the emergency/alert/critical/error/warning/notice/info/debug/trace(message[, context], args...) methods:
    • these are same as logger.status[xxx]. (v0.2.3)
  • add the logging level supports
  • broken: remove the predefined status as its logging method utility
  • add status(aStatus, aMessage, ...) and status[status](aMessage,...) 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'

License

MIT

About

Terminal-logger prints the message to the console.

Resources

License

Stars

Watchers

Forks

Packages

No packages published
Morty Proxy This is a proxified and sanitized view of the page, visit original site.