使用文件名中的日期/时间创建日志文件
如何在每次启动程序时,将日志覆盖到新文件中?因此,文件名的末尾是文件创建的日期和时间。
var fs = require('fs');
var ws = fs.createWriteStream('test.log', {
'flags' : 'w',
'encoding': 'utf8',
'mode' : 0666,
});
process.stdout.wr = process.stdout.write;
process.stdout.er = process.stderr.write;
process.stdout.write = function(mes, c) {
ws.write(mes + '\r\n');
process.stdout.wr(mes, c)
};
process.stderr.write = function(mes, c) {
ws.write(mes + '\r\n');
process.stdout.er(mes, c)
};
回答如下:
你可以使用这样的代码来做到这一点:
const data = new Date();
const timestamp = date.getTime();
var ws = fs.createWriteStream(`test-${timestamp}.log`, {
'flags' : 'w',
'encoding': 'utf8',
'mode' : 0666,
});
日志文件名将类似于test-1553591263787.log
,test-1553591318028.log
......
如果您想要自定义日期/时间格式,请检查this SO question about formatting。
使用文件名中的日期/时间创建日志文件
如何在每次启动程序时,将日志覆盖到新文件中?因此,文件名的末尾是文件创建的日期和时间。
var fs = require('fs');
var ws = fs.createWriteStream('test.log', {
'flags' : 'w',
'encoding': 'utf8',
'mode' : 0666,
});
process.stdout.wr = process.stdout.write;
process.stdout.er = process.stderr.write;
process.stdout.write = function(mes, c) {
ws.write(mes + '\r\n');
process.stdout.wr(mes, c)
};
process.stderr.write = function(mes, c) {
ws.write(mes + '\r\n');
process.stdout.er(mes, c)
};
回答如下:
你可以使用这样的代码来做到这一点:
const data = new Date();
const timestamp = date.getTime();
var ws = fs.createWriteStream(`test-${timestamp}.log`, {
'flags' : 'w',
'encoding': 'utf8',
'mode' : 0666,
});
日志文件名将类似于test-1553591263787.log
,test-1553591318028.log
......
如果您想要自定义日期/时间格式,请检查this SO question about formatting。