consolite
v0.3.12
Published
Light wrapper for console
Downloads
3,182
Maintainers
Readme
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