我是 nodejs 的新手,我正在尝试创建一个用于自定义格式化日志记录到文件和控制台的函数。以下是我为此目的使用的功能。
module.exports.log =function(req,res)
{
res.on('finish', function()
{
point = new Date();
clientIP = req.ip;
request = req.protocol + '://' + req.get('host') + req.originalUrl;
userAgent = req.get('User-Agent');
method = req.method;
statusCode = res.statusCode;
output =
"["
+point.toDateString()
+"] -- ["
+point.getHours()
+":"
+point.getMinutes()
+":"
+point.getSeconds()
+"] -- [client IP : "
+clientIP
+"] -- [user agent : "
+userAgent
+"] -- [method : "
+method
+"] -- [request : "
+request
+"] -- [response code : "
+statusCode
+"]"
;
console.log(output);
var fs = require('fs');
fs.appendFile('QAB.log', output, function (err)
{
if (err) throw err;
});
})
}
不知道这是否是正确的做法。我检查了winston、log4js-node等库。但我只是想我会自己创建它。我想知道如果我使用winston、log4js或其他东西是否会获得性能优势。
或者换一种说法……我做错了吗?这会影响我的节点服务器的性能吗?