我希望每天都有日志文件。我不希望他们两个都创建单独的日志文件。我只想每天有一个日志文件 基础。
示例:application-YYYY-MM-DD:HH:MM.log(日志轮播)
我该如何实现? 另外,PM2 Log Rotate不支持用于记录的时间戳。那么,如何合并这两个功能?
我附加了ecosystem.config.js和logger.js
ecosystem.config.js
module.exports = {
apps: [{
name: 'API',
script: 'app.js',
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: '1G',
output: `./logs/starter-logs.log`,
error: `./logs/starter-errors.log`,
log: './logs/combined.outerr.log',
log_date_format: 'DD-MM-YYYY HH:mm:ss:SS Z',
append_env_to_name: true,
// For merging cluster mode logs
merge_logs: true,
env: {
NODE_ENV: 'development',
PORT: 3002,
MONGODB_URI: 'mongodb://localhost:27017/test'
},
env_production: {
NODE_ENV: 'production',
PORT: 3004,
}
}]
logger.js
const logger = createLogger({
level: 'info',
format: format.combine(
format.timestamp({
format: 'YYYY-MM-DD HH:mm:ss'
}),
format.errors({ stack: true }),
format.splat(),
format.json()
),
transports: [
new transports.File({ filename: `${logFileName}-error.log`, level: 'error' }),
new transports.File({ filename: `${logFileName}-combined.log` }),
new transports.Console(),
]
});
需要一个日志文件,而不是像PM2那样创建日志以及Winston来创建日志文件。
此外,我还需要文件传输和控制台传输。请检查上面的代码。