![](/img/trans.png)
[英]How to write to different sections of a window using console.log in node.js?
[英]How to write log to console and file on Node.JS?
我想要如何同时记录到文件和控制台。 这是我的代码片段:
我想让记录到控制台和记录到文件成为可能。 下面的代码有效,但是有什么办法可以做到我刚才提到的吗?
var fs = require("fs");
var Logger = (exports.Logger = {});
var infoStream = fs.createWriteStream("logs/info.txt");
var errorStream = fs.createWriteStream("logs/error.txt");
var debugStream = fs.createWriteStream("logs/debug.txt");
Logger.info = function(msg) {
var message = new Date().toISOString() + " : " + msg + "\n";
infoStream.write(message);
};
Logger.debug = function(msg) {
var message = new Date().toISOString() + " : " + msg + "\n";
debugStream.write(message);
};
Logger.error = function(msg) {
var message = new Date().toISOString() + " : " + msg + "\n";
errorStream.write(message);
};
我会用winston 。
您可以使用不同的选项创建不同的传输。
export const Logger = winston.createLogger({
transports: [
new winston.transports.Console({ silent: process.env.NODE_ENV == "test" }),
new winston.transports.File({ filename: "log/error.log" }),
],
})
例如,如果您为 debug/info/error 创建传输并将其与silent
选项结合使用,那么只有想要的文件 go 到日志,还有一个level
配置键,但它会过滤掉低于该级别的错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.