在Linux中進行Node.js日志管理,可從日志庫選擇、日志輪換、查看監控等方面入手,具體方法如下:
- 選擇日志庫:可使用Winston、Pino、Bunyan、Log4js等庫。例如,Winston支持多種傳輸方式和靈活的格式化配置;Pino以高性能和低開銷著稱,適合高負載應用;Log4js功能豐富,支持日志級別控制、文件輪換等。
- 配置日志級別:根據需求設置不同級別,如trace、debug、info、warn、error、fatal,生產環境通常只記錄error或warn級別日志。
- 實現日志輪換:
- 使用logrotate工具:Linux系統自帶,可按時間或文件大小輪換日志,需在
/etc/logrotate.d/目錄下創建配置文件,如/etc/logrotate.d/nodejs-app,并設置輪轉規則。
- 利用PM2內置功能:若用PM2管理進程,可安裝
pm2-logrotate模塊,配置日志文件大小、保留天數等。
- 借助日志庫內置輪轉:如Winston可通過
winston-daily-rotate-file插件實現按天輪轉。
- 查看與管理日志:
- 命令行工具:用
tail -f實時查看日志,cat查看全部內容,grep篩選特定內容。
- 專業日志管理工具:如ELK Stack(Elasticsearch+Logstash+Kibana)可實現日志的集中收集、分析和可視化。