1.1.0 • Published 11 years ago
fastlog v1.1.0
fastlog
stupid simple logging for Node.js. Prints messages to stdout.
Create a logger:
var logger = require('fastlog')(category, level);logger then has a functions named after each of the available log levels.
Levels are (in order of severity) debug, info, warn, error and fatal.
Both arguments are optional. category defaults to to "default" and level
defaults to "debug". Anything less severe than the given level will not be
logged.
The logger functions take a string (interpolation optional):
var logger = require('fastlog')('security', 'debug');
logger.debug('there is a %s in my %s!', 'snake', 'boot');
// [Fri, 05 Dec 2014 02:10:48 GMT] [debug] [security] there is a snake in my boot!Or an Error object. Any string property that's tacked onto the object will be logged as well:
var err = new Error('someone poisoned the water hole!');
err.culprit = 'sid';
logger.error(err);
// [Fri, 05 Dec 2014 02:10:48 GMT] [error] [security] Error: someone poisened the water hole!
// at Module.runMain (module.js:492:10)
// at process.startup.processNextTick.process._tickCallback (node.js:244:9)
// culprit: sidYou can format your own prefix as well:
var logger = require('fastlog')('configured', 'error', '${level} [${ category }] <${timestamp}>');
logger.error('This town ain\'t big enough for the two of us!');
// error [configured] <Fri, 05 Dec 2014 02:10:48 GMT> This town ain't big enough for the two of us!Usage via shell scripts
You may also use fastlog in shell scripts. First, make sure fastlog is installed globally
npm install -g fastlogfastlog <level> [--category=<category>] [message]
> fastlog error --category important "You're my favorite deputy"
# [Fri, 05 Dec 2014 03:17:59 GMT] [error] [important] You're my favorite deputy- Configure verbosity by specifying a
FASTLOG_LEVELenvironment variable. - Configure your prefix with a
FASTLOG_PREFIXenvironment variable. - Specifying a
categoryis optional
> export FASTLOG_LEVEL=info
> export FASTLOG_PREFIX='<${timestamp}>'
> fastlog debug "I think you've had enough tea for today, let's get you outta here, Buzz."
# (nothing prints)
> fastlog error "I think you've had enough tea for today, let's get you outta here, Buzz."
# <Fri, 05 Dec 2014 03:22:29 GMT> I think you've had enough tea for today, let's get you outta here, Buzz.