23001dfb
sumatek
update log
|
1
2
3
4
5
6
7
8
|
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);
|
c4a567d0
sumatek
merge
|
9
10
11
12
13
14
15
16
17
|
// wait log stats
// logg.stat('stat_name');
var logger = [];
var summaryList = [];
var start = {};
var detail = {};
var startTime;
|
23001dfb
sumatek
update log
|
18
|
|
23001dfb
sumatek
update log
|
19
|
logger.stat = function (msg){
|
c4a567d0
sumatek
merge
|
20
21
22
23
24
25
26
27
28
29
30
31
32
|
logg.stat(msg);
}
logger.log = function (msg,type)
{
if(!type)
type = 'debug';
type = type.toLowerCase();
switch(type) {
case 'debug':
|
23001dfb
sumatek
update log
|
33
|
logg.debug(msg);
|
c39cf9da
Nattapon Wongpaet
update stat log
|
34
35
36
37
|
break;
case 'info':
logg.info(msg);
break;
|
095909b9
sumatek
update log
|
38
|
case 'warn':
|
23001dfb
sumatek
update log
|
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
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)
{
|
0ec6fba7
sumatek
update fix bug
|
62
63
|
summary = {
node : undefinedToNull(nodeData),
|
23001dfb
sumatek
update log
|
64
65
|
cmd : cmdData,
resultCode : resultCode,
|
095909b9
sumatek
update log
|
66
|
resultDesc : developerMessage,
|
c4a567d0
sumatek
merge
|
67
|
type : "success"
|
23001dfb
sumatek
update log
|
68
69
|
};
summaryList.push(summary);
|
b253306b
Nattapon Wongpaet
update log get cu...
|
70
|
// console.log(summary);
|
23001dfb
sumatek
update log
|
71
|
}
|
4bcb9ffa
Nattapon Wongpaet
update log vizcard
|
72
73
|
logger.addErrorSummary = function (nodeData,cmdData,resultCode,developerMessage)
|
e2039477
Nattapon Wongpaet
update log
|
74
|
{
|
23001dfb
sumatek
update log
|
75
|
summary = {
|
c4a567d0
sumatek
merge
|
76
77
|
node : undefinedToNull(nodeData),
cmd : cmdData,
|
095909b9
sumatek
update log
|
78
|
resultCode : resultCode,
|
23001dfb
sumatek
update log
|
79
80
|
resultDesc : developerMessage,
type : "error"
|
c4a567d0
sumatek
merge
|
81
|
};
|
e2039477
Nattapon Wongpaet
update log
|
82
83
|
summaryList.push(summary);
// console.log(summary);
|
b253306b
Nattapon Wongpaet
update log get cu...
|
84
|
}
|
e2039477
Nattapon Wongpaet
update log
|
85
|
|
4bcb9ffa
Nattapon Wongpaet
update log vizcard
|
86
87
|
logger.logSummary = function (response)
{
|
e2039477
Nattapon Wongpaet
update log
|
88
89
|
var log = logg.summary(start.session,start.cmd,start.identity);
var row;
|
c4a567d0
sumatek
merge
|
90
91
92
|
for (let index = 0; index < summaryList.length; index++) {
row = summaryList[index];
if(row.type === "success"){
|
e2039477
Nattapon Wongpaet
update log
|
93
94
95
|
log.addSuccessBlock(row.node,row.cmd,row.resultCode,row.resultDesc);
} else {
log.addErrorBlock(row.node,row.cmd,row.resultCode,row.resultDesc);
|
c4a567d0
sumatek
merge
|
96
|
}
|
23001dfb
sumatek
update log
|
97
|
}
|
c4a567d0
sumatek
merge
|
98
99
100
101
|
if(response){
log.end(response.resultCode,response.developerMessage)
} else {
|
c39cf9da
Nattapon Wongpaet
update stat log
|
102
|
log.end()
|
23001dfb
sumatek
update log
|
103
104
|
}
}
|
095909b9
sumatek
update log
|
105
|
|
e2039477
Nattapon Wongpaet
update log
|
106
107
108
109
110
|
var addlogDetailData = function(inputType,node,cmd,type,rawData,data){
if(inputType == 'input')
{
if(rawData)
{
|
095909b9
sumatek
update log
|
111
|
var raw = {
|
50ad7d6d
Nattapon Wongpaet
update get vizcar...
|
112
|
body : rawData.body,
|
53004544
Nattapon Wongpaet
update customer
|
113
114
115
116
117
|
query : rawData.query,
params : rawData.params,
response : rawData.response
};
} else {
|
095909b9
sumatek
update log
|
118
|
var raw = {
|
23001dfb
sumatek
update log
|
119
|
};
|
c4a567d0
sumatek
merge
|
120
|
}
|
095909b9
sumatek
update log
|
121
122
|
detail.input = {
|
e2039477
Nattapon Wongpaet
update log
|
123
|
node : undefinedToNull(node),
|
23001dfb
sumatek
update log
|
124
|
cmd : cmd,
|
e2039477
Nattapon Wongpaet
update log
|
125
|
type : type,
|
095909b9
sumatek
update log
|
126
127
|
rawData : raw,
data : data
|
a55a3d02
Nattapon Wongpaet
update post custo...
|
128
129
|
};
|
095909b9
sumatek
update log
|
130
|
// console.log(detail.input);
|
e2039477
Nattapon Wongpaet
update log
|
131
|
}
|
50ad7d6d
Nattapon Wongpaet
update get vizcar...
|
132
|
else if(inputType == 'output')
|
e2039477
Nattapon Wongpaet
update log
|
133
|
{
|
23001dfb
sumatek
update log
|
134
|
detail.output = {
|
095909b9
sumatek
update log
|
135
|
node : undefinedToNull(node),
|
c4a567d0
sumatek
merge
|
136
|
cmd : cmd,
|
b253306b
Nattapon Wongpaet
update log get cu...
|
137
|
type : type,
|
095909b9
sumatek
update log
|
138
139
|
rawData : rawData,
data : data
|
e2039477
Nattapon Wongpaet
update log
|
140
|
};
|
095909b9
sumatek
update log
|
141
142
143
|
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 );
|
c4a567d0
sumatek
merge
|
144
|
log.addOutput( detail.output.node, detail.output.cmd, detail.output.type, detail.output.rawData, detail.output.data );
|
095909b9
sumatek
update log
|
145
146
147
148
|
log.end();
// console.log(detail.output);
}
}
|
c4a567d0
sumatek
merge
|
149
150
|
var logDetailData = {
|
b253306b
Nattapon Wongpaet
update log get cu...
|
151
|
addInput : function(node,cmd,type,rawData,data){addlogDetailData('input',node,cmd,type,rawData,data)},
|
095909b9
sumatek
update log
|
152
153
154
155
156
157
|
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 );
|
c4a567d0
sumatek
merge
|
158
159
|
// log.end();
// }
|
50ad7d6d
Nattapon Wongpaet
update get vizcar...
|
160
161
162
163
|
};
logger.logDetail = logDetailData;
|
095909b9
sumatek
update log
|
164
|
var undefinedToNull = function(data){
|
23001dfb
sumatek
update log
|
165
|
if(!data){
|
23001dfb
sumatek
update log
|
166
167
|
data = 'null';
} else {
|
095909b9
sumatek
update log
|
168
|
data = data;
|
c4a567d0
sumatek
merge
|
169
170
171
|
}
return data;
|
095909b9
sumatek
update log
|
172
173
174
175
|
}
logger.startEC = function(req)
{
|
b253306b
Nattapon Wongpaet
update log get cu...
|
176
177
178
179
180
181
182
183
184
185
|
var newLine = "\r\n";
var messageRes = '';
startTime = new Date();
// if(!mapTime[req.headers.host])
// {
// mapTime[req.headers.host]
// }
|
c4a567d0
sumatek
merge
|
186
187
|
// console.log(Object.keys(req));
|
05183f06
sumatek
update log
|
188
189
|
// console.log(req.headers);
// console.log(req.body);
|
c4a567d0
sumatek
merge
|
190
191
192
193
|
if(req.body)
{
if(typeof req.body === 'string')
|
34fdaca2
sumatek
fix bug log usetime
|
194
|
body = req.bod;
|
c4a567d0
sumatek
merge
|
195
|
else
|
05183f06
sumatek
update log
|
196
|
body = JSON.stringify(req.body);
|
05183f06
sumatek
update log
|
197
|
}
|
c4a567d0
sumatek
merge
|
198
|
|
05183f06
sumatek
update log
|
199
|
var header = "";
|
c4a567d0
sumatek
merge
|
200
201
|
if(req.headers)
{
|
34fdaca2
sumatek
fix bug log usetime
|
202
|
if(typeof req.headers === 'string')
|
05183f06
sumatek
update log
|
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
|
header = req.headers;
else
header = JSON.stringify(req.headers);
}
messageRes += newLine+newLine+"#====> Incoming Message <====# ";
messageRes += newLine+"Header : "+header;
messageRes += newLine+"Body : "+body;
messageRes += newLine+"Time in : "+startTime.toISOString();
messageRes += newLine
logger.log(messageRes);
};
logger.endEC = function(res)
{
var newLine = "\r\n";
var messageRes = '';
var endTime = new Date();
var body = "";
|
c4a567d0
sumatek
merge
|
226
|
if(res.resBody)
|
05183f06
sumatek
update log
|
227
228
229
230
|
{
if(typeof res.resBody === 'string')
body = res.resBody;
else
|
095909b9
sumatek
update log
|
231
|
body = JSON.stringify(res.resBody);
|
c4a567d0
sumatek
merge
|
232
233
|
}
|
05183f06
sumatek
update log
|
234
235
|
var header = "";
if(res.req.headers)
|
c4a567d0
sumatek
merge
|
236
|
{
|
05183f06
sumatek
update log
|
237
238
239
240
|
if(typeof res.req.headers === 'string')
header = res.req.headers;
else
header = JSON.stringify(res.req.headers);
|
c4a567d0
sumatek
merge
|
241
|
}
|
05183f06
sumatek
update log
|
242
|
|
c4a567d0
sumatek
merge
|
243
|
messageRes += newLine+newLine+"#====> Outgoing Message <====# ";
|
05183f06
sumatek
update log
|
244
|
messageRes += newLine+"Header : "+header;
|
c4a567d0
sumatek
merge
|
245
|
messageRes += newLine+"Body : "+body;
|
05183f06
sumatek
update log
|
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
|
messageRes += newLine+"Time out : "+endTime.toISOString();
messageRes += newLine+"Use times : "+Math.abs(endTime - startTime)+" ms";
// messageRes += `
// ________________________________________________________________________________________________________________________
// __________#####___________________________________#####___________________________________#####_________________________
// _________##____#_________________________________##____#_________________________________##____#________________________
// ________##______#_______________________________##______#_______________________________##______#_______________________
// ________#________#______________________________#________#______________________________#________#______________________
// _________________#######_________________________________#######_________________________________#######________________
// _________________#########_______________________________#########_______________________________#########______________
// __________##_____###########______________________##_____###########______________________##_____###########____________
// ___________#_____#############_____________________#_____#############_____________________#_____#############__________
// _________________##############___###____________________##############___###____________________##############___###___
// _______##________###############_##_##_________##________###############_##_##_________##________###############_##_##__
// ______###_______#################____#________###_______#################____#________###_______#################____#__
// ____#######___##________#########____#______#######___##________#########____#______#######___##________#########____#__
// ___#___####___#______________###_____#_____#___####___#______________###_____#_____#___####___#______________###_____#__
// ___#___##______#__#__________________#_____#___##______#__#__________________#_____#___##______#__#__________________#__
|
c4a567d0
sumatek
merge
|
266
|
// ___#_________________________________#_____#_________________________________#_____#_________________________________#__
|
05183f06
sumatek
update log
|
267
268
269
270
271
272
|
// ___#______________##_________________#_____#______________##_________________#_____#______________##_________________#__
// __#___________#_________________#___#_____#___________#_________________#___#_____#___________#_________________#___#___
// ___#__________#________________###__#______#__________#________________###__#______#__________#________________###__#___
// ____##_______#_________________#_###________##_______#_________________#_###________##_______#_________________#_###____
// _____#________________________##_____________#________________________##_____________#________________________##________
// _____#________________________#______________#________________________#______________#________________________#_________
|
27aed231
Nattapon Wongpaet
update post membe...
|
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
|
// _____#_______________________#_______________#_______________________#_______________#_______________________#__________
// _____#______________________##_______________#______________________##_______________#______________________##__________
// _____##_____________________#________________##_____________________#________________##_____________________#___________
// ______#____________________#__________________#____________________#__________________#____________________#____________
// ______#___________________#___________________#___________________#___________________#___________________#_____________
// _______#_________________#_____________________#_________________#_____________________#_________________#______________
// _______##_______________#______________________##_______________#______________________##_______________#_______________
// ________##____________##________________________##____________##________________________##____________##________________
// __________##________###___________________________##________###___________________________##________###_________________
// ____________#########_______________________________#########_______________________________#########___________________
// ________________________________________________________________________________________________________________________
// ________________________________________________________________________________________________________________________
// `;
logger.log(messageRes);
messageRes += newLine
};
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');
|
05183f06
sumatek
update log
|
307
|
// s1.end('20000','sucesss');
|
27aed231
Nattapon Wongpaet
update post membe...
|
308
309
|
// s2.end();
|
05183f06
sumatek
update log
|
310
|
//type// - REQ, RES, RES_TIMEOUT, REQ_RETRY_1/1
|
c4a567d0
sumatek
merge
|
311
312
|
// var ddd = logg.detail('session1', 'cmd', 'identity');
// ddd.addInput( 'node', 'cmd', 'type', 'rawData', 'data' );
|
05183f06
sumatek
update log
|
313
314
|
// ddd.addOutput( 'node', 'cmd', 'type', 'rawData', 'data');
// ddd.end();
|
095909b9
sumatek
update log
|
|
|
23001dfb
sumatek
update log
|
|
|
095909b9
sumatek
update log
|
|
|