var env = process.env.NODE_ENV || 'development'; var cfg = require('../../config/config.js').get(env); var conf = {}; conf.log = cfg.log; conf.log.projectName = cfg.app_name; var logg = require('commonlog-kb').init(conf); // wait log stats // logg.stat('stat_name'); var logger = []; var summaryList = []; var start = {}; var detail = {}; logger.stat = function (msg){ logg.stat(msg); } logger.log = function (msg,type) { if(!type) type = 'debug'; type = type.toLowerCase(); switch(type) { case 'debug': logg.debug(msg); break; case 'info': logg.info(msg); break; case 'warn': logg.warn(msg); break; case 'error': logg.error(msg); break; default: logg.debug(msg); } console.log(msg); } logger.startlog = function (cmdData,session,identity) { start = { session : session, cmd : cmdData, identity : identity }; } logger.addSuccessSummary = function (nodeData,cmdData,resultCode,developerMessage) { summary = { node : nodeData, cmd : cmdData, resultCode : resultCode, resultDesc : developerMessage, type : "success" }; summaryList.push(summary); // console.log(summary); } logger.addErrorSummary = function (nodeData,cmdData,resultCode,developerMessage) { summary = { node : nodeData, cmd : cmdData, resultCode : resultCode, resultDesc : developerMessage, type : "error" }; summaryList.push(summary); // console.log(summary); } logger.logSummary = function (response) { var log = logg.summary(start.session,start.cmd,start.identity); var row; for (let index = 0; index < summaryList.length; index++) { row = summaryList[index]; if(row.type === "success"){ log.addSuccessBlock(row.node,row.cmd,row.resultCode,row.resultDesc); } else { log.addErrorBlock(row.node,row.cmd,row.resultCode,row.resultDesc); } } if(response){ log.end(response.resultCode,response.developerMessage) } else { log.end() } } var addlogDetailData = function(inputType,node,cmd,type,rawData,data){ if(inputType == 'input') { if(rawData) { var raw = { body : rawData.body, query : rawData.query, params : rawData.params, response : rawData.response }; } else { var raw = { }; } detail.input = { node : node, cmd : cmd, type : type, rawData : raw, data : data }; // console.log(detail.input); } else if(inputType == 'output') { detail.output = { node : node, cmd : cmd, type : type, rawData : rawData, data : data }; var log = logg.detail(start.session, start.cmd, start.identity); log.addInput( detail.input.node, detail.input.cmd, detail.input.type, detail.input.rawData, detail.input.data ); log.addOutput( detail.output.node, detail.output.cmd, detail.output.type, detail.output.rawData, detail.output.data ); log.end(); // console.log(detail.output); } } var logDetailData = { addInput : function(node,cmd,type,rawData,data){addlogDetailData('input',node,cmd,type,rawData,data)}, addOutput : function(node,cmd,type,rawData,data){addlogDetailData('output',node,cmd,type,rawData,data)} // write : function () // { // var log = logg.detail(start.session, start.cmd, start.identity); // log.addInput( detail.input.node, detail.input.cmd, detail.input.type, detail.input.rawData, detail.input.data ); // log.addOutput( detail.output.node, detail.output.cmd, detail.output.type, detail.output.rawData, detail.output.data ); // log.end(); // } }; logger.logDetail = logDetailData; module.exports = logger; // var s1 = logg.summary('session1', 'cmd', 'identity'); // s1.addSuccessBlock('node', 'a', '20000', 'resultDesc'); // s1.addSuccessBlock('node', 'b', 'resultCode', 'resultDesc'); // s1.addSuccessBlock('node1', 'c', 'resultCode', 'resultDesc'); // s1.addSuccessBlock('node1', 'cmd', 'resultCode', 'resultDesc'); // s1.addSuccessBlock('node1', 'cmd', 'resultCode', 'resultDesc 1'); // s1.addSuccessBlock('node1', 'cmd', 'resultCode', 'resultDesc 1'); // var s2 = logg.summary('session2', 'cmd', 'identity'); // s1.end('20000','sucesss'); // s2.end(); //type// - REQ, RES, RES_TIMEOUT, REQ_RETRY_1/1 // var ddd = logg.detail('session1', 'cmd', 'identity'); // ddd.addInput( 'node', 'cmd', 'type', 'rawData', 'data' ); // ddd.addOutput( 'node', 'cmd', 'type', 'rawData', 'data'); // ddd.end();