morgan记录服务器访问日志 - CyberSage-hub/express GitHub Wiki

morgan的详细使用方法见https://segmentfault.com/a/1190000007769095

morgan是nodejs中,专门用来记录http请求日志的中间件

//app.js文件中引入morgan木块,
var logger = require('morgan');

//安装file-stream-rotator模块,结合morgan,可实现日志切分
var FileStreamRotator = require('file-stream-rotator');
var fs = require('fs')

//打印日志到日志到控制台
//app.use(logger('dev'));

//或者打印日志到日志文件
var logDirectory = path.join(__dirname, 'log')

//如果日志文件不存在,则创建
fs.existsSync(logDirectory) || fs.mkdirSync(logDirectory)

//按日切割日志文件
var accessLogStream = FileStreamRotator.getStream({
  date_format: 'YYYYMMDD',
  filename: path.join(logDirectory, 'access-%DATE%.log'),
  frequency: 'daily',
  verbose: false
})

app.use(logger('combined',{stream:accessLogStream}));
$ supervisor bin/www
在项目根目录下面会看到已经为你创建了log文件夹,里面生成了对应的日志文件