express
模塊簡單集成了一個日誌模塊morgan
,能夠將請求的一些消息打印在後臺終端上,然而在實際的生產系統中,咱們一般須要更完備的日誌功能,以便供運維人員按期查看。git
這裏簡單介紹winston
模塊的引入,實現最簡單的日誌寫入文件功能,首先項目中安裝模塊,以下命令:github
npm install --save express-winston npm install --save winston
而後在項目app.js
文件中引入對應的模塊,以下代碼所示:express
var winston = require('winston'); var expressWinston = require('express-winston'); // 正常請求的日誌 app.use(expressWinston.logger({ transports: [ new (winston.transports.Console)({ json: true, colorize: true }), new winston.transports.File({ filename: 'logs/success.log' }) ] })); // 正常訪問路由 routes(app); // 錯誤請求的日誌 app.use(expressWinston.errorLogger({ transports: [ new winston.transports.Console({ json: true, colorize: true }), new winston.transports.File({ filename: 'logs/error.log' }) ] }));
日誌文件分爲success.log
和error.log
,放在正常路由以前則爲成功日誌,放在正常訪問路由以後,則爲錯誤日誌。如不需過多功能,這樣放進項目裏便可,詳細瞭解可查看官方文檔: winstonjs/winston: A logger for just about everything.npm