node package manager
Loosely couple your services. Use Orgs to version and reuse your code. Create a free org »


It is a wrapper around logToFile logger, which provides dfferent logs levels, rotation, compression and colored logs on console.

To install sp-logger, use [npm]:

$ npm install sp-logger

Below is the list of other configurable options.

var options = { enable: ["error", "warn", "info", "debug", "stdout", "stderr"], fileName: "node.log", directory: "../log", writeDelay: 200, bufferSize: 4096, fileMaxSize: 1024 * 1024 * 10, maxBackupFileNumber: 10, gzipBackupFile: false, compressionLevel: 3, verbose: true


var log = require("sp-logger");
Minimum options required to use it are enable, directory and fileName;
var logger = log.create({
    enable: ["error", "warn", "info", "debug", "stdout", "stderr"],
    directory:"./", fileName:"node_test.log"

Error and stream (stdout, stderr) logging

Outputs "Wed Aug 29 2012 16:15:56 GMT+0530 (IST) ERROR: This goes out to error.log

    logger.error("This goes out to error.log");

Outputs "Wed Aug 29 2012 16:15:56 GMT+0530 (IST) ERROR: This goes out to stderr"

    logger.stderr("This goes out to stderr");

Outputs "Wed Aug 29 2012 16:15:56 GMT+0530 (IST) OUT: This goes out to stdout"

    logger.stdout("This goes out to stdout");

You could do chaining as well, though it may not be needed.

    .warn("This goes out to warn.log") 
    .info("This goes out to info.log")
    .debug("This goes out to debug.log") 

Enabling/disabling logger types.

    .error("This goes out to error.log") // No output 
    .error("This goes out to error.log"); // Outputs "ERROR: This goes out to error.log" 

Ideal way to use in application and make is available to all js files.

console.logger = logger;

Then use anywhere in you app as below.

console.logger.error("This goes out to error.log");
console.logger.warn("This goes out to warn.log");