一、Node.js应用日志查看方法(CentOS核心场景)
1. 通过systemd日志工具journalctl查看(推荐)
如果Node.js应用是通过systemd服务来管理的——比如用systemctl start my-nodejs-app这种方式启动的——那么用journalctl命令查日志就再方便不过了。几个常用参数顺手记一下:

- 想看指定服务的全部日志?直接敲
journalctl -u your-nodejs-service-name,把服务名换成你自己的(比如my-nodejs-app); - 想实时盯着日志更新?加个
-f参数,journalctl -u your-nodejs-service-name -f,效果和tail -f一样,新日志一出现就刷出来; - 想过滤关键字?比如只搜出“error”,那就
journalctl -u your-nodejs-service-name | grep 'error',瞬间定位问题; - 想看某个时间段的日志?用
--since和--until,比如journalctl -u your-nodejs-service-name --since "2025-09-25" --until "2025-09-26",一目了然。
2. 直接查看应用日志文件
如果你启动Node.js时是通过命令行重定向了日志输出,比如node app.js > logs/app.log 2>&1 &这样的方式,那直接操作日志文件更直接:
- 想看全部内容?
cat logs/app.log,一次性全刷出来,适合小文件; - 嫌内容太多?用
less logs/app.log,上下翻页,按q退出; - 想实时监控新增内容?
tail -f logs/app.log,日志文件一有变化,终端立刻更新; - 只关心最近N行?
tail -n 100 logs/app.log,显示最后100行,快速定位近期问题。
3. 使用PM2进程管理器查看
如果你用PM2来管理Node.js进程——这是很多人的选择——那么PM2自带的日志命令就很顺手了:
- 想看所有应用的实时日志?
pm2 logs; - 只关心某个具体应用?
pm2 logs app-name,把app-name换成你的应用名,比如api; - 想要更详细的信息,比如带上时间戳?
pm2 logs --json,输出JSON格式,包含时间、进程ID等; - 想看指定行数?
pm2 logs big-api --lines 1000,显示最近1000行日志。
二、前端JS日志查看方法(浏览器端)
如果JS代码跑在浏览器里——比如Vue、React这类前端应用——那直接在浏览器开发者工具里看就行:
- 打开开发者工具:Windows按
F12,Mac按Cmd+Opt+I,或者右键选“检查”; - 切到“Console”(控制台)选项卡,就能看到所有
console.log()、console.error()输出的日志; - 如果只想看错误日志,点控制台顶部的“Error”按钮,瞬间过滤出所有错误,定位问题快得多。
三、第三方日志管理工具(高级场景)
到了生产环境或者需要集中管理日志的时候,光靠命令行就不够了。这时候有更专业的工具上场:
- ELK Stack(Elasticsearch+Logstash+Kibana):Logstash负责收集Node.js或系统日志,存到Elasticsearch里,再用Kibana画仪表盘,什么日志趋势、错误统计都可视化出来;
- Graylog:开源日志管理工具,收集、搜索、告警一应俱全,适合大规模场景;
- Sentry:专门做前端和Node.js错误监控的,能实时捕获并上报错误,还附带堆栈跟踪、用户信息等上下文,修复问题效率高很多。