0.2.0 • Published 5 years ago

@alfa-wells/alfa-logger v0.2.0

Weekly downloads
-
License
ISC
Repository
-
Last release
5 years ago

Alfa-Logger

Preconfigured logger for Alfa Project.

How to use

Set Up

npm install @alfa-wells/alfa-logger --save

First of all, set a folder to drop log files in. Do this at the very begining of your program.

    const Logger = require('@alfa-wells/alfa-logger')
    Logger.toFolder("/path/to/log")

In production (environment variable NODE_ENV has value production) folder is created if not exist and log files are created there. Files are rotated dialy and old files are conserved for 5 days and finally deleted. When not in production environment, logs to the console, ignoring the folder. Log level is also preconfigured based on environment. In production, only error and warn are logged. When not in production, all levels are shown.

Begin To Write

In your program files, just write:

    const Logger = require('@alfa-wells/alfa-logger')
    
    Logger.debug("This is my first message")
    //[2018-11-22T04:08:55.017Z] DEBUG: This is my first message
    
    Logger.error("This is my first error")
    //[2018-11-22T04:09:55.017Z] ERROR: This is my first error
    
    try {
        (null).jump()  //
    } catch(err) {
        Logger.error(err)
    }
    //[2018-11-22T04:22:19.249Z] ERROR: TypeError: Cannot read property 'jump' of null

Available methods/levels, sorted from less to more important are:

  • silly
  • debug
  • verbose
  • info
  • warn
  • error

All of then takes any as argument.

Scoped Loggers

In previous examples a global logger is used. In practice, it is recommended to do all your stuff with a scoped logger. An scoped logger is exactly like the global logger but it's created with a label which is shown at the begining of every message.

    //Notice the scope as an argument at the end of this line
    const Logger = require('@alfa-wells/alfa-logger')('my-nice-module')
    
    Logger.debug("This is my first message")
    //[2018-11-22T04:08:55.017Z][my-nice-module] DEBUG: This is my first message
    //                           ^--- Here it is!