-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathlogutil.js
45 lines (38 loc) · 1.22 KB
/
logutil.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
var winston = require('winston');
var path = require('path');
var util = require('util');
var fs = require('fs');
var logPath = "./logs";
if (!winston.transports.DailyRotateFile) {
winston.transports.DailyRotateFile = require('winston-daily-rotate-file');
}
if(!fs.existsSync(logPath)){
fs.mkdirSync(logPath);
};
exports.config = function (fileName) {
var logger = new (winston.Logger)({
transports: [
new (winston.transports.Console)({ level: 'info' }),
new (winston.transports.DailyRotateFile)({
filename: util.format('%s/%s', logPath, fileName),
datePattern: '-yyyy-MM-dd.log',
maxsize: 1024 * 1024 * 10, // 10MB ,
level: 'info',
timestamp: function() { return new Date().toLocaleTimeString(); }
})
]
});
return logger;
}
exports.log = log;
function log(methodName) {
var str = "";
for (var i = 1; i < arguments.length; i++) {
str += arguments[i];
if (i < arguments.length - 1) str += ", ";
}
console.log("\n" + logPrefix(methodName) + str);
}
function logPrefix(methodName) {
return new Date().toLocaleTimeString() + " " + methodName + ": ";
}