Socket
Socket
Sign inDemoInstall

golc

Package Overview
Dependencies
7
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    golc

Colorful logging utility with log levels


Version published
Maintainers
1
Install size
181 kB
Created

Readme

Source

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

Keywords

FAQs

Last updated on 05 Apr 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc