whatap 0.4.48 → 0.4.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/logger.js CHANGED
@@ -3,305 +3,305 @@
3
3
  * Use of this source code is governed by a license that
4
4
  * can be found in the LICENSE file.
5
5
  */
6
- var WHATAP_CONF = process.env.WHATAP_CONF || 'whatap';
6
+ var WHATAP_CONF = process.env.WHATAP_CONF || 'whatap';
7
7
 
8
- var conf = require('./conf/configure'),
9
- DateUtil = require('./util/dateutil'),
10
- path = require('path'),
11
- fs = require('fs');
12
-
13
- var PID=process.pid;
14
-
15
- var initializer = {
16
- last : DateUtil.currentTime(),
17
- lastDateUnit : DateUtil.getDateUnit(),
18
- lastFileRotation : conf.log_rotation_enabled,
19
- reset : function () {
20
- if(Logger.printWriter)
21
- Logger.printWriter.close();
22
- Logger.logfile = null;
23
- Logger.openFile();
24
- },
25
- process : function () {
26
- conf = require('./conf/configure');
27
- var now = DateUtil.currentTime();
28
- if(now > this.last + DateUtil.MILLIS_PER_HOUR) {
29
- this.last = now;
30
- Logger.clearOldLog();
31
- }
32
- if(this.lastFileRotation !== conf.log_rotation_enabled
33
- || this.lastDateUnit !== DateUtil.getDateUnit()
34
- || (Logger.logfile !== null && fs.existsSync(Logger.logfile) == false)) {
35
- try {
36
- if(Logger.printWriter){
37
- Logger.printWriter.close();
38
- }
39
- Logger.logfile = null;
40
- this.lastFileRotation = conf.log_rotation_enabled;
41
- this.lastDateUnit = DateUtil.getDateUnit();
42
- } catch(e) {
43
- console.log(e);
44
- }
45
- }
46
- try {
47
- Logger.openFile();
48
- } catch(e) {
49
- console.log(e);
50
- }
51
- }
52
- };
53
-
54
- var Logger = {
55
- ONAME : null,
56
- logfile : null,
57
- lastLog : {},
58
- printWriter : null,
59
- printAll : function (id, message, sysout) {
60
- try{
61
- var b_msg = this.build(id, message);
62
- if(this.printWriter != null) {
63
- this.printWriter.write(b_msg);
64
- this.printWriter.write('\n');
65
- } else {
66
- this.openFile();
67
- }
68
- sysout = (sysout || process.env.WHATAP_PRINT);
69
- if(sysout) {
70
- console.log(b_msg);
71
- }
72
- } catch (e){
73
- if(sysout) {
74
- console.log(e);
75
- }
76
- }
77
- },
78
- print : function (id, message, sysout) {
79
- if(this.checkOk(id, 10) == false) {
80
- return;
81
- }
82
- try{
83
- var b_msg = this.build(id, message);
84
- if(this.printWriter != null) {
85
- this.printWriter.write(b_msg);
86
- this.printWriter.write('\n');
87
- } else {
88
- this.openFile();
89
- }
90
- sysout = (sysout || process.env.WHATAP_PRINT);
91
- if(sysout) {
92
- console.log(b_msg);
93
- }
94
- } catch (e){
95
- if(sysout) {
96
- console.log(e);
97
- }
98
- }
99
- },
100
- printError : function (id, message, err, sysout) {
101
- if(this.checkOk(id, 10) == false) {
102
- return;
103
- }
104
- this.print(id, message, false);
105
- sysout = (sysout || process.env.WHATAP_PRINT);
106
- if(sysout) {
107
- console.error(this.build(id, message));
108
- }
109
- if(err) {
110
- if(this.printWriter != null) {
111
- this.printWriter.write(err.stack);
112
- this.printWriter.write('\n');
113
- }
114
- }
115
- },
116
- checkOk : function (id, sec) {
117
- if(conf.log_print_enabled === false) { return false; }
118
- if(conf.isIgnoreLog && conf.isIgnoreLog(id)) { return false; }
119
-
120
- if(Object.keys(Logger.lastLog).length >= 1000) {
121
- Logger.lastLog = {};
122
- }
123
-
124
- if(sec > 0) {
125
- var last = Logger.lastLog[id];
126
- if(last == null) {
127
- last = 0;
128
- }
129
- var now = Date.now();
130
- if(now < last + sec * 1000) {
131
- return false;
132
- }
133
- Logger.lastLog[id] = now;
134
- }
135
- return true;
136
- },
137
- build : function (id, message) {
138
- var str = DateUtil.datetime(Date.now());
139
- str += ' [';
140
- str += id;
141
- str += '] <' + PID + '> ';
142
- str += message;
143
- return str;
144
- },
145
- openFile : function () {
146
- if(conf.log_file_enabled === false ) { return; }
147
- var log_prefix = WHATAP_CONF+"-";
148
-
149
- var root = conf['app.root'];
150
- if(root==null || root ==undefined){
151
- console.log('[WHATAP]Logger Error - WHATAP ROOT DIR IS NULL!!!!!!!!!');
152
- return;
153
- }
154
- var dir = path.join(root, 'logs');
155
- if(fs.existsSync(dir) == false) {
156
- fs.mkdirSync(dir);
157
- }
158
-
159
- if(conf.log_rotation_enabled) {
160
- var file = path.join(dir, log_prefix + DateUtil.yyyymmdd() + '.log');
161
- this.logfile = file;
162
- this.printWriter = fs.createWriteStream(file, {flags : 'a'});
163
- } else {
164
- var file = path.join(dir, 'whatap.log');
165
- this.logfile = file;
166
- this.printWriter = fs.createWriteStream(file, {flags : 'a'});
167
- }
168
-
169
- },
170
- clearOldLog : function () {
171
- if(conf.log_rotation_enabled === false || conf.log_enabled === false) { return; }
172
- if(conf.log_keep_days <= 0) { return; }
173
-
174
- var nowUnit = DateUtil.getDateUnit(),
175
- root = conf['app.root'],
176
- dir = path.join(root, 'logs'),
177
- log_prefix = WHATAP_CONF+"-";
178
-
179
- fs.readdir(dir, function (err, files) {
180
-
181
- for(var i=0; i<files.length; i++) {
182
- var stat = fs.statSync(path.join(dir, files[i]));
183
- if(stat.isDirectory()) {
184
- return true;
185
- }
186
- var name = files[i];
187
- if(name.indexOf(log_prefix) < 0) {
188
- return true;
189
- }
190
- var x = name.lastIndexOf('.');
191
- if(x < 0) {
192
- return true;
193
- }
194
- var date = name.substr(log_prefix.length + 1, (x - log_prefix.length - 1));
195
- if(date.length != 8) {
196
- return true;
197
- }
198
- var d = DateUtil.yyyymmdd(date);
199
- var fileUnit = DateUtil.getDateUnit(d);
200
- try {
201
- if (nowUnit - fileUnit > conflog_keep_days) {
202
- fs.unlinkSync(path.join(dir, files[i]));
203
- }
204
- } catch (e) { }
205
- }
206
-
207
- });
208
- },
209
- read : function( file, endpos, length , callback) {
210
-
211
- if ( file == null || length === 0)
212
- return null;
213
- if (file.startsWith(WHATAP_CONF) == false)
214
- return null;
215
-
216
-
217
-
218
- var root = conf['app.root'];
219
- if(root==null ){
220
- return null;
221
- }
222
- var dir = path.join(root, 'logs');
223
- var fileFullPath = path.join(dir, file);
224
-
225
- if(fs.existsSync(fileFullPath) == false) {
226
- return null;
227
- }
228
- const stats = fs.statSync(fileFullPath);
229
-
230
- if (endpos < 0) {
231
- endpos = stats.size;
232
- }
8
+ var conf = require('./conf/configure'),
9
+ DateUtil = require('./util/dateutil'),
10
+ path = require('path'),
11
+ fs = require('fs');
12
+
13
+ var PID=process.pid;
14
+
15
+ var initializer = {
16
+ last : DateUtil.currentTime(),
17
+ lastDateUnit : DateUtil.getDateUnit(),
18
+ lastFileRotation : true,
19
+ reset : function () {
20
+ if(Logger.printWriter)
21
+ Logger.printWriter.close();
22
+ Logger.logfile = null;
23
+ Logger.openFile();
24
+ },
25
+ process : function () {
26
+ conf = require('./conf/configure');
27
+ var now = DateUtil.currentTime();
28
+ if(now > this.last + DateUtil.MILLIS_PER_HOUR) {
29
+ this.last = now;
30
+ Logger.clearOldLog();
31
+ }
32
+ if(this.lastFileRotation !== conf.log_rotation_enabled
33
+ || this.lastDateUnit !== DateUtil.getDateUnit()
34
+ || (Logger.logfile !== null && fs.existsSync(Logger.logfile) == false)) {
35
+ try {
36
+ if(Logger.printWriter){
37
+ Logger.printWriter.close();
38
+ }
39
+ Logger.logfile = null;
40
+ this.lastFileRotation = conf.log_rotation_enabled;
41
+ this.lastDateUnit = DateUtil.getDateUnit();
42
+ } catch(e) {
43
+ console.log(e);
44
+ }
45
+ }
46
+ try {
47
+ Logger.openFile();
48
+ } catch(e) {
49
+ console.log(e);
50
+ }
51
+ }
52
+ };
53
+
54
+ var Logger = {
55
+ ONAME : null,
56
+ logfile : null,
57
+ lastLog : {},
58
+ printWriter : null,
59
+ printAll : function (id, message, sysout) {
60
+ try{
61
+ var b_msg = this.build(id, message);
62
+ if(this.printWriter != null) {
63
+ this.printWriter.write(b_msg);
64
+ this.printWriter.write('\n');
65
+ } else {
66
+ this.openFile();
67
+ }
68
+ sysout = (sysout || process.env.WHATAP_PRINT);
69
+ if(sysout) {
70
+ console.log(b_msg);
71
+ }
72
+ } catch (e){
73
+ if(sysout) {
74
+ console.log(e);
75
+ }
76
+ }
77
+ },
78
+ print : function (id, message, sysout) {
79
+ if(this.checkOk(id, 10) == false) {
80
+ return;
81
+ }
82
+ try{
83
+ var b_msg = this.build(id, message);
84
+ if(this.printWriter != null) {
85
+ this.printWriter.write(b_msg);
86
+ this.printWriter.write('\n');
87
+ } else {
88
+ this.openFile();
89
+ }
90
+ sysout = (sysout || process.env.WHATAP_PRINT);
91
+ if(sysout) {
92
+ console.log(b_msg);
93
+ }
94
+ } catch (e){
95
+ if(sysout) {
96
+ console.log(e);
97
+ }
98
+ }
99
+ },
100
+ printError : function (id, message, err, sysout) {
101
+ if(this.checkOk(id, 10) == false) {
102
+ return;
103
+ }
104
+ this.print(id, message, false);
105
+ sysout = (sysout || process.env.WHATAP_PRINT);
106
+ if(sysout) {
107
+ console.error(this.build(id, message));
108
+ }
109
+ if(err) {
110
+ if(this.printWriter != null) {
111
+ this.printWriter.write(err.stack);
112
+ this.printWriter.write('\n');
113
+ }
114
+ }
115
+ },
116
+ checkOk : function (id, sec) {
117
+ if(conf.log_print_enabled === false) { return false; }
118
+ if(conf.isIgnoreLog && conf.isIgnoreLog(id)) { return false; }
119
+
120
+ if(Object.keys(Logger.lastLog).length >= 1000) {
121
+ Logger.lastLog = {};
122
+ }
123
+
124
+ if(sec > 0) {
125
+ var last = Logger.lastLog[id];
126
+ if(last == null) {
127
+ last = 0;
128
+ }
129
+ var now = Date.now();
130
+ if(now < last + sec * 1000) {
131
+ return false;
132
+ }
133
+ Logger.lastLog[id] = now;
134
+ }
135
+ return true;
136
+ },
137
+ build : function (id, message) {
138
+ var str = DateUtil.datetime(Date.now());
139
+ str += ' [';
140
+ str += id;
141
+ str += '] <' + PID + '> ';
142
+ str += message;
143
+ return str;
144
+ },
145
+ openFile : function () {
146
+ if(conf.log_file_enabled === false ) { return; }
147
+ var log_prefix = WHATAP_CONF+"-";
148
+
149
+ var root = conf['app.root'];
150
+ if(root==null || root ==undefined){
151
+ console.log('[WHATAP]Logger Error - WHATAP ROOT DIR IS NULL!!!!!!!!!');
152
+ return;
153
+ }
154
+ var dir = path.join(root, 'logs');
155
+ if(fs.existsSync(dir) == false) {
156
+ fs.mkdirSync(dir);
157
+ }
158
+
159
+ if(conf.log_rotation_enabled) {
160
+ var file = path.join(dir, log_prefix + DateUtil.yyyymmdd() + '.log');
161
+ this.logfile = file;
162
+ this.printWriter = fs.createWriteStream(file, {flags : 'a'});
163
+ } else {
164
+ var file = path.join(dir, 'whatap.log');
165
+ this.logfile = file;
166
+ this.printWriter = fs.createWriteStream(file, {flags : 'a'});
167
+ }
168
+
169
+ },
170
+ clearOldLog : function () {
171
+ if(conf.log_rotation_enabled === false || conf.log_enabled === false) { return; }
172
+ if(conf.log_keep_days <= 0) { return; }
173
+
174
+ var nowUnit = DateUtil.getDateUnit(),
175
+ root = conf['app.root'],
176
+ dir = path.join(root, 'logs'),
177
+ log_prefix = WHATAP_CONF+"-";
178
+
179
+ fs.readdir(dir, function (err, files) {
180
+
181
+ for(var i=0; i<files.length; i++) {
182
+ var stat = fs.statSync(path.join(dir, files[i]));
183
+ if(stat.isDirectory()) {
184
+ return true;
185
+ }
186
+ var name = files[i];
187
+ if(name.indexOf(log_prefix) < 0) {
188
+ return true;
189
+ }
190
+ var x = name.lastIndexOf('.');
191
+ if(x < 0) {
192
+ return true;
193
+ }
194
+ var date = name.substr(log_prefix.length + 1, (x - log_prefix.length - 1));
195
+ if(date.length != 8) {
196
+ return true;
197
+ }
198
+ var d = DateUtil.yyyymmdd(date);
199
+ var fileUnit = DateUtil.getDateUnit(d);
200
+ try {
201
+ if (nowUnit - fileUnit > conflog_keep_days) {
202
+ fs.unlinkSync(path.join(dir, files[i]));
203
+ }
204
+ } catch (e) { }
205
+ }
206
+
207
+ });
208
+ },
209
+ read : function( file, endpos, length , callback) {
210
+
211
+ if ( file == null || length === 0)
212
+ return null;
213
+ if (file.startsWith(WHATAP_CONF) == false)
214
+ return null;
215
+
216
+
217
+
218
+ var root = conf['app.root'];
219
+ if(root==null ){
220
+ return null;
221
+ }
222
+ var dir = path.join(root, 'logs');
223
+ var fileFullPath = path.join(dir, file);
224
+
225
+ if(fs.existsSync(fileFullPath) == false) {
226
+ return null;
227
+ }
228
+ const stats = fs.statSync(fileFullPath);
229
+
230
+ if (endpos < 0) {
231
+ endpos = stats.size;
232
+ }
233
+
234
+ var start = Math.max(0, endpos - length);
235
+
236
+ if ( stats.size < start)
237
+ return null;
238
+
239
+ var available = stats.size - start;
240
+ var readable = Math.min(available, length);
241
+ var next=-1;
242
+ var buffer = Buffer.alloc(readable);
243
+ fs.open(fileFullPath, 'r', function (err, fd) {
244
+ fs.read(fd, buffer, 0, buffer.length, start,function(e,l,b){
245
+ next = endpos + l;
246
+ if (next > stats.size) {
247
+ next = -1;
248
+ }
249
+ callback(start, next,b.toString("utf8",0,l)) ;
250
+ });
251
+ fs.close(fd);
252
+ });
233
253
 
234
- var start = Math.max(0, endpos - length);
235
-
236
- if ( stats.size < start)
237
- return null;
238
-
239
- var available = stats.size - start;
240
- var readable = Math.min(available, length);
241
- var next=-1;
242
- var buffer = Buffer.alloc(readable);
243
- fs.open(fileFullPath, 'r', function (err, fd) {
244
- fs.read(fd, buffer, 0, buffer.length, start,function(e,l,b){
245
- next = endpos + l;
246
- if (next > stats.size) {
247
- next = -1;
248
- }
249
- callback(start, next,b.toString("utf8",0,l)) ;
250
- });
251
- fs.close(fd);
252
- });
253
-
254
- },
255
- getLogFiles : function () {
256
- var MapValue = require('./value/map-value');
257
- var log_prefix = WHATAP_CONF+"-";
258
-
259
- var o = new MapValue();
260
- if(conf.log_file_enabled === false ) { return o; }
261
- var root = conf['app.root'];
262
- if(root==null){
263
- return o;
264
- }
265
- var dir = path.join(root, 'logs');
266
- if(fs.existsSync(dir) === false) {
267
- return o;
268
- }
269
- var agoOneMonthTime=DateUtil.getMonth(Date.now(), -1);
270
-
271
- if(conf.log_rotation_enabled) {
272
- var files = fs.readdirSync(dir);
273
- files.forEach(function (file) {
274
- if (file.startsWith(log_prefix) == false) {
275
- return;
276
- }
277
- var x = file.lastIndexOf('.');
278
- if (x < 0) {
279
- return;
280
- }
281
- var date = file.substring(log_prefix.length , x);
282
- if (date.length != 8) {
283
- return;
284
- }
285
- if (DateUtil.yyyymmdd(date) < agoOneMonthTime) {
286
- return;
287
- }
288
- const stats = fs.statSync(dir + '/'+file);
289
- if(stats){
290
- o.putLong(file, stats.size);
291
- }
292
- });
293
- } else {
294
- if (fs.existsSync(dir + "/whatap.log")) {
295
- const stats = fs.statSync(dir + "/whatap.log");
296
- o.putLong(file, stats.size);
297
- }
298
- }
299
- return o;
300
- },
301
- initializer : initializer,
302
- CODE: {
303
-
304
- }
305
- };
306
-
307
- module.exports = Logger;
254
+ },
255
+ getLogFiles : function () {
256
+ var MapValue = require('./value/map-value');
257
+ var log_prefix = WHATAP_CONF+"-";
258
+
259
+ var o = new MapValue();
260
+ if(conf.log_file_enabled === false ) { return o; }
261
+ var root = conf['app.root'];
262
+ if(root==null){
263
+ return o;
264
+ }
265
+ var dir = path.join(root, 'logs');
266
+ if(fs.existsSync(dir) === false) {
267
+ return o;
268
+ }
269
+ var agoOneMonthTime=DateUtil.getMonth(Date.now(), -1);
270
+
271
+ if(conf.log_rotation_enabled) {
272
+ var files = fs.readdirSync(dir);
273
+ files.forEach(function (file) {
274
+ if (file.startsWith(log_prefix) == false) {
275
+ return;
276
+ }
277
+ var x = file.lastIndexOf('.');
278
+ if (x < 0) {
279
+ return;
280
+ }
281
+ var date = file.substring(log_prefix.length , x);
282
+ if (date.length != 8) {
283
+ return;
284
+ }
285
+ if (DateUtil.yyyymmdd(date) < agoOneMonthTime) {
286
+ return;
287
+ }
288
+ const stats = fs.statSync(dir + '/'+file);
289
+ if(stats){
290
+ o.putLong(file, stats.size);
291
+ }
292
+ });
293
+ } else {
294
+ if (fs.existsSync(dir + "/whatap.log")) {
295
+ const stats = fs.statSync(dir + "/whatap.log");
296
+ o.putLong(file, stats.size);
297
+ }
298
+ }
299
+ return o;
300
+ },
301
+ initializer : initializer,
302
+ CODE: {
303
+
304
+ }
305
+ };
306
+
307
+ module.exports = Logger;
@@ -41,9 +41,9 @@ TcpSession.prototype.open = function(cb){
41
41
  if(cb) return cb(new Error('PCODE is not defined..'));
42
42
  }
43
43
  if(this.isOpen()) {
44
- ++reconnectCnt;
45
- if(reconnectCnt === 3) {
46
- this.close();
44
+ ++self.reconnectCnt;
45
+ if(self.reconnectCnt === 3) {
46
+ self.close();
47
47
  }
48
48
  return cb(new Error('Already connected..'));
49
49
  }