在Ubuntu上設置Node.js應用程序的日志輪轉,可以使用pm2
這個進程管理器。pm2
可以幫助你管理Node.js應用程序的運行、監控日志以及實現日志輪轉。以下是設置步驟:
首先確保你已經安裝了Node.js和npm。
使用npm全局安裝pm2:
sudo npm install pm2 -g
pm2 start app.js --name my-app
這里app.js
是你的Node.js應用程序的入口文件,my-app
是應用程序的名稱。
ecosystem.config.js
的配置文件。在你的項目根目錄下創建這個文件,并添加以下內容:module.exports = {
apps: [
{
name: 'my-app',
script: 'app.js',
instances: 'max',
exec_mode: 'cluster',
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}
]
};
這里name
是應用程序的名稱,script
是應用程序的入口文件,instances
設置為max
表示根據CPU內核數自動擴展實例數量,exec_mode
設置為cluster
表示使用集群模式運行。
pm2 start ecosystem.config.js --env production
這里--env production
表示使用生產環境配置。
pm2-logrotate
你可以將這個命令添加到crontab
中以實現定期執行。例如,每天凌晨1點執行日志輪轉:
0 1 * * * pm2-logrotate
要編輯crontab
,運行:
crontab -e
然后將上面的命令添加到文件中并保存。
現在你的Node.js應用程序的日志將在指定時間自動輪轉。