如何在EC2实例的Node.js应用中查看console.log输出日志?
解决PM2无法查看自定义console.log日志的问题
先确认PM2进程关联状态
用pm2 list查看应用列表,确保你的Express应用在列且状态为online。如果是新部署的,重新启动并指定应用名:pm2 start app.js --name your-app-name,方便后续精准操作。精准查看目标应用日志
默认pm2 logs会输出所有进程日志,只看你的应用日志用pm2 logs your-app-name。日志太多的话,加--lines 100看最近100行,或者--raw查看原始输出,避免PM2格式化干扰。直接查看PM2日志文件
用pm2 show your-app-name找到out log path和error log path,然后用tail -f /path/to/out.log实时追踪日志,这样肯定能看到console.log(response)的输出内容。排查Node.js输出捕获问题
确保PM2直接启动应用入口文件,不是通过间接脚本启动。检查应用代码里有没有重定向stdout的逻辑,比如process.stdout.write或者修改console配置,这些会导致PM2抓不到日志。结合NGINX日志排查接口问题
接口无返回数据时,还要看NGINX的访问日志和错误日志,路径一般是/var/log/nginx/access.log和/var/log/nginx/error.log,用tail -f实时查看,确认请求是否到达NGINX、转发是否出错,定位是NGINX配置还是应用本身的问题。
内容的提问来源于stack exchange,提问作者seun
相关产品推荐
相关产品推荐

