node日志管理 / pm2-logrotate-ext日志管理


本篇文章說的是,如何使用pm2管理node項目的日志輸出(切割和備份),文章步驟是基於已經安裝了pm2的前提下,沒有的,請自行百度。

 

第一步:需要登錄公司服務器,查看一下目前服務器保存的所有日志(用於跟后面的效果對比),執行命令 pm2 logs 可以查看。

第二步:安裝pm2日志切割管理工具(工具是pm2-logrotate的擴展),執行命令:pm2 install pm2-logrotate-ext

第三步:安裝好后會自動重啟生效,可以執行命令設置如下參數,設置好參數后也會自動重啟

pm2 set pm2-logrotate-ext:retain 7   //保存7個文件

pm2 set pm2-logrotate-ext:compress false    //是否啟動壓縮

pm2 set pm2-logrotate-ext:dateFormat YYYY-MM-DD_HH-mm-ss    //日志名添加時間

pm2 set pm2-logrotate-ext:rotateInterval '0 0 * * * '    //每天凌晨0點啟動備份

pm2 set pm2-logrotate-ext:rotateModule true    //把pm2本身的日志也進行分割

pm2 set pm2-logrotate-ext:max_size 100M    //每個備份文件大小為100M

pm2 set pm2-logrotate-ext:workerInterval 5    //設置啟動幾個工作進程監控日志尺寸,默認30,這里設置為5

pm2 set pm2-logrotate-ext:retain 30       //保存30個備份日志文件,超過30個,會把之前的刪掉,防止日志總體體積越來越大

 

 

第四步驟,執行好之后可以查看當前的設置:pm2 conf pm2-logrotate-ext

第五步驟:之前的日志如果不需要了,可以使用命令:pm2 flush,可以不重啟項目刪除日志。可以自行修改參數檢驗備份結果。

 

我只設置了上面參數中標紅的項,其它項保留了默認配置,

最終效果是:如果當日某個項目的日志文件超過了設定的大小,這里為100M,那么會自動切割備份當日文件,如果未超過,則會在每日0點的時候啟動備份,當然備份的前提是有新日志輸出,沒有新日志輸出不會備份。一共會為每個項目保存30個備份日志。

 

這就是我的node項目日志管理,如果有其它的好的建議,可以留言分享一下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM