golc

1.1.0 • Public • Published

This is golc 🌈📝

(Since clog was taken)

Version Downloads

A colorful logging utility for NodeJS programs.

Screenshot of golc

Installation 📦

npm i --save golc

It is Production Ready️™ as in: I am using it in production

Features 🍕

  • 6 log levels + disabling

  • customizable color schemes (via chalk API)

  • optional log badges (with label and kind)

Usage 🚀

Import it

const Golc = require('golc')

Make it

const L = new Golc('MyLogger')

... Use it!

function doTheJob() {
  try {
    job()
  } catch (e) {
    L.error(e)
  }
 
  L.info('Job done! 👍')
}

Make more!

const BLog = new Golc('BeautifulLogger', {...})
const SLog = new Golc('ShyLogger', {...})

Suppressing logs

By default log levels are set basing on the environment you're running in. production sets logs to INFO level, others will have all the logs enabled.

You can suppress logs of a certain level just by setting the level on your logger.

L.level = L.ERROR

Possible values are: NONE, ERROR, WARN, INFO, LOG, DEBUG, TRACE.

They go in order, so if you set L.level = L.LOG, you will get: ERROR, WARN, INFO and LOG.

Beware !!!

If you're logging costly operations, wrap your logic in conditions like so:

if (L.level >= L.INFO) {
  L.info(costlyOperation())
}

Customization 🎛

The constructor accepts a label, which will be used to tag your logs, and an options object:

const L = new Golc('Logger', options)

Where possible options are:

{
  withLabel: true, // Label of the logger in the badge (It's name)
  withKind: false, // Kind of log in the badge (Error, Warn, ...)
  withNewline: false, // Put a newline between the badge and the message
  styles: {
    error: {
      badge: ['bgRed', 'bold'], // Badge styles
      message: ['red', 'bgYellow'] // Message styles
    },
    warn: {...},
    info: {...},
    log: {...},
    debug: {...},
    trace: {...}
  }
}

A style object it's really just an array containing the chalk options that you want to combine, as strings.

You can check how that works right here! 🔍👀

License

MIT

Contributions / Suggestions

Welcome and welcome! 🤗

Inspiration

ulog

Readme

Keywords

Package Sidebar

Install

npm i golc

Weekly Downloads

2

Version

1.1.0

License

MIT

Unpacked Size

101 kB

Total Files

9

Last publish

Collaborators

  • ghzmdr