journalctl是CentOS 7及以上版本默認的系統日志管理工具,可用于查看通過systemd管理的Node.js服務日志(如用pm2、forever或自定義systemd服務啟動的應用)。
node app.js --name my-js-app),可使用以下命令過濾該服務的日志:journalctl -u your-nodejs-service-name -t
其中your-nodejs-service-name為服務標識(如my-js-app),-t參數可顯示日志標簽(便于識別來源)。-f參數可實時跟蹤日志更新(類似tail -f):journalctl -u your-nodejs-service-name -f
grep過濾特定錯誤(如“ERROR”“Exception”):journalctl | grep 'ERROR'
若Node.js應用啟動時將日志重定向到文件(如logs/app.log),可直接使用以下命令查看:
cat logs/app.log
less logs/app.log
按空格翻頁,q退出。tail -f logs/app.log
此命令會持續輸出文件末尾的新內容,適合監控實時錯誤或請求。對于分布式系統或需要集中管理的場景,可使用以下工具實現日志的收集、存儲、分析與可視化:
logs/app.log或journalctl轉發),Elasticsearch索引存儲,Kibana提供Web界面進行搜索、圖表展示(如錯誤趨勢、響應時間分布)。systemd啟動,journalctl可能無法捕獲其日志,需直接查看應用指定的日志文件。logrotate工具定期分割壓縮(如每天生成一個新文件),避免占用過多磁盤空間。