- 系统没有日志,就等于一个人没有眼睛
- 第一种,访问日志access log(server端最重要的日志)
- 第二种,自定义日志(包括自定义事件,错误记录等)
创建日志文件
一般我们生成日志,都需要读取文件的,nodejs可以通过流的方式读取写入文件。
const fs = require('fs');
const path = require('path');
// 生成 write stream
function createWriteStram(fileName){
const fullFileName = path.join(__dirname,'../','../','logs',fileName);
const writeStream = fs.createWriteStream(fullFileName,{
flags:'a' // a是append w是覆盖原有的
});
return writeStream
}
// 写日志
function writeLog(writeStream,log){
writeStream.write(log+'\n'); //关键代码
}
// 写访问日志
const accessWriteStram = createWriteStram('access.log');
function access(log){
writeLog(accessWriteStram,log)
}
module.exports = {
access
}
//调用
access(`${req.method} -- ${req.url} -- ${req.headers['user-agent']} -- ${Date.now()}`)