npm.io
0.3.12 • Published 3 years ago

consolite

Licence
MIT
Version
0.3.12
Deps
0
Size
104 kB
Vulns
0
Weekly
0
Stars
2

Features

  • It's tiny - 371 bytes gzip + minify.
  • It preserves line numbers - so you can find exactly where your code was logged.
  • Prefixing - provide context for your logs by adding a prefix.
  • Nesting - sometimes you need to add extra context. This can be handled by creating a child logger
  • Log levels - log levels can be customized and are inherited by child instances
  • Native console methods - consolite wraps around console so any method available on console will be available on consolite.

Install

npm install consolite

Basic Usage

import { createLogger } from 'consolite'

const log = createLog()

log.log('hello world') // prints "hello world"

Examples

Using prefix
const log = createLog('[my-prefix]')

log.log('hello world') // prints "[my-prefix] hello world"
Using a function prefix
const log = createLog(method => `${method} ->`)
log.debug('hello world') // prints "debug -> hello world"
Child logger

Child loggers inherit prefixes, levels and level from their parents.

const log = createLog('[parent]')
const childLog = log.createChild('[child]')

log.log('hello world') // prints "[parent] [child] hello world"
Changing log level
const log = createLog()

log.debug('hello world') // does nothing
log.level = 4 // 3 by default
log.debug('hello world') // prints "hello world"
Changing default levels
const log = createLog()

log.debug('hello world') // does nothing
log.levels.debug = 3 // set debug to match current logging level
log.debug('hello world') // prints "hello world"
Adding custom method
const log = createLog()
log.register('silly', console.log)
log.levels.silly = 8
log.silly('hello world')
Filtering messages
const log = createLog()
log.filter = (prefixes, method) => method !== 'debug' || process.env.DEBUG

Keywords