在Debian上管理Node.js應用程序的日志是一個重要的任務,它有助于監控系統運行狀況、排查故障原因以及優化系統性能。以下是一些常用的方法和工具,可以幫助你在Debian上有效地管理Node.js應用程序的日志。
PM2是一個流行的Node.js進程管理工具,它可以幫助你管理Node.js應用程序的啟動、停止和日志記錄。
安裝PM2:
sudo npm install pm2 -g
啟動Node.js應用程序:
pm2 start app.js --name my-app
配置PM2日志管理:
創建一個名為 ecosystem.config.js
的文件,并添加以下內容:
module.exports = {
apps: [{
name: 'my-app',
script: 'app.js',
instances: 'max',
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}]
};
查看和管理日志:
pm2 logs
pm2 logs my-app
pm2 logs my-app --lines 100
pm2 clear my-app
為了防止日志文件過大,可以使用日志輪轉工具,如 logrotate
。
安裝logrotate:
sudo apt install logrotate
創建logrotate配置文件:
創建一個名為 /etc/logrotate.d/my-app
的文件,并添加以下內容:
/path/to/your/nodejs/logs/*.log {
daily
missingok
rotate 7
compress
notifempty
create 0640 root adm
}
測試配置:
sudo logrotate --debug /etc/logrotate.d/my-app
手動執行logrotate:
sudo logrotate -f /etc/logrotate.conf
Debian系統通常使用 systemd-journald
作為其日志守護進程。你可以通過編輯 /etc/rsyslog.conf
文件或創建特定的配置文件在 /etc/rsyslog.d/
目錄下來配置日志記錄。
查看系統日志:
sudo journalctl -xe
查看特定服務的日志:
sudo journalctl -u your-nodejs-service
實時查看日志:
sudo journalctl -f
使用像 Datadog、New Relic 或 Loggly 這樣的第三方監控工具可以幫助你監控Node.js應用程序的性能和日志。這些工具通常提供了更高級的監控和分析功能。
通過以上方法,你可以在Debian上有效地配置和管理Node.js應用程序的日志,確保日志信息的有效記錄、輪轉和集中管理。