1.0.2 • Published 2 years ago

@spdeepika/common-logger v1.0.2

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

common-logger

A logger package which can be used to log necessary informations based on project requirement, avoids duplicate codes and is highly customizable. Cloudwatch Dashboard can be built easily with the logs generated from this package.

To install

npm install @spdeepika/common-logger

Usage

var logger = require('@spdeepika/common-logger');

// loggerOptions 

var loggerOptions = {
    logEntryExitTime : true //flag to log API entry,exit time and total execution time. Default Value : true
    logEntireRequestBody : false //flag to log API Entire Request Body. Default Value : false
    logEntireRequestHeader : false //flag to log API Entire Header. Default Value : false
    logRequestHost : false // flag to log client host. Default Value : false
    logSpecificRequestBody : [] //to log specific keys of request body. Example : ['requestKey1','requestKey2']
    logSpecificRequestHeader : [] //to log specific request header. Example : ['user-agent']
    logEntireResponse : false //flag to log entire API response. Default Value : false
    logAdditionalPrefixes : [] //to log specific value in all console logs. Example : ['userId']. It will add userId value in all console logs
    apiNameMappings : {} //object that maps API name with request url . Example : {'/testRoute':'Test API'}. By default api Names will be added in all console logs
}

// Creating new instance 

var loggerInstance = new logger(loggerOptions);

//Adding logger in api routes

app.route('/testRoute').post(loggerInstance.entryCall.bind(loggerInstance), controller.testController, loggerInstance.exitCall.bind(loggerInstance), cors()); //entryCall - to log the request related information , exitCall - to log the response related information

Example Logs

Test API API entry time : 2022-09-30T08:57:22.802Z Test API API Request Body token : Bearer token Test API API Request Host : localhost:3001 Test API API Request Header user-agent : PostmanRuntime/7.29.2 Test API API SUCCESS Test API API SUCCESS Exit time : 2022-09-30T08:57:22.889Z Test API API Total SUCCESS Execution time : 87ms