1.0.2 • Published 2 years ago
@spdeepika/common-logger v1.0.2
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