Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript winston完全自定义文件输出_Javascript_Node.js_Logging_Winston - Fatal编程技术网

Javascript winston完全自定义文件输出

Javascript winston完全自定义文件输出,javascript,node.js,logging,winston,Javascript,Node.js,Logging,Winston,编辑:找到了答案,并为未来的读者发布了完整的答案 我已经掌握了in Node.js的基本知识,并希望进一步定制我的日志记录。以下是我到目前为止的情况: var winston=require('winston'); 移除(winston.transports.Console); add(winston.transports.Console,{'colorize':true}); 添加(winston.transports.File, { 'filename':'testlog.log', “

编辑:找到了答案,并为未来的读者发布了完整的答案


我已经掌握了in Node.js的基本知识,并希望进一步定制我的日志记录。以下是我到目前为止的情况:

var winston=require('winston');
移除(winston.transports.Console);
add(winston.transports.Console,{'colorize':true});
添加(winston.transports.File,
{
'filename':'testlog.log',
“时间戳”:函数(){return Date.now();},
}
);
//假设我只想记录“信息”或“错误”
函数loginfo(arg){return winston.info(arg);}

函数logerror(arg){return winston.error(arg);}
[回答我自己的问题]

Winston有一个定制的格式化程序选项,它简单而高效,在最底层提供了一个示例

在我的示例中,不检查每个参数是否存在的最小代码是:

var log=new(winston.Logger)({
运输:[
新建(winston.transports.File)({
名称:“信息正常”,
文件名:'./log_info.log',
级别:“信息”,
时间戳:函数(){return Date.now();}
}),
新建(winston.transports.File)({
名称:'info_custom',
文件名:'./log\u info\u custom.log',
级别:“信息”,
时间戳:函数(){return Date.now();},
格式化程序:函数(选项){
//返回的字符串将传递给记录器
返回options.timestamp()++'+options.level++
options.message+''+JSON.stringify(options.meta);
},
json:false//别忘了!!!!!!!!!!!
})
]

});[回答我自己的问题]

Winston有一个定制的格式化程序选项,它简单而高效,在最底层提供了一个示例

在我的示例中,不检查每个参数是否存在的最小代码是:

var log=new(winston.Logger)({
运输:[
新建(winston.transports.File)({
名称:“信息正常”,
文件名:'./log_info.log',
级别:“信息”,
时间戳:函数(){return Date.now();}
}),
新建(winston.transports.File)({
名称:'info_custom',
文件名:'./log\u info\u custom.log',
级别:“信息”,
时间戳:函数(){return Date.now();},
格式化程序:函数(选项){
//返回的字符串将传递给记录器
返回options.timestamp()++'+options.level++
options.message+''+JSON.stringify(options.meta);
},
json:false//别忘了!!!!!!!!!!!
})
]
});