要設置Node.js日志的存儲路徑,您可以使用第三方日志庫,例如winston或morgan。這里以winston為例,演示如何設置日志存儲路徑。
首先,確保您已經安裝了winston:
npm install winston
接下來,創建一個名為logger.js的文件,并添加以下代碼:
const winston = require('winston');
const logger = winston.createLogger({
level: 'info',
format: winston.format.json(),
transports: [
new winston.transports.File({ filename: 'logs/error.log', level: 'error' }),
new winston.transports.File({ filename: 'logs/combined.log' })
]
});
if (process.env.NODE_ENV !== 'production') {
logger.add(new winston.transports.Console({
format: winston.format.simple()
}));
}
module.exports = logger;
在這個例子中,我們創建了一個winston實例,并配置了兩個日志文件:一個用于存儲錯誤日志(error.log),另一個用于存儲所有級別的日志(combined.log)。這兩個文件都將存儲在logs文件夾中。
現在,在您的應用程序中使用logger.js文件記錄日志:
const logger = require('./logger');
logger.info('This is an info message');
logger.error('This is an error message');
運行應用程序后,您會在項目根目錄下看到一個名為logs的文件夾,其中包含error.log和combined.log文件。
如果您希望更改日志文件的存儲路徑,只需修改logger.js文件中transports.File對象的filename屬性即可。例如,如果您希望將日志文件存儲在/var/log/myapp目錄中,可以將代碼更改為:
new winston.transports.File({ filename: '/var/log/myapp/error.log', level: 'error' }),
new winston.transports.File({ filename: '/var/log/myapp/combined.log' })