温馨提示×

nodejs日志启动失败怎查

小樊
57
2026-09-14 16:58:32
栏目: 编程语言

Node.js 日志“启动失败”可以从错误本身、运行方式、环境依赖、日志位置几个方向排查。下面按实战步骤来:


一、先看“真正的报错信息”

不要只看“启动失败”,要看 完整错误栈。

1. 直接运行看报错

node app.js
# 或
node server.js

常见错误示例:

  • Error: Cannot find module 'xxx' → 依赖没装
  • EADDRINUSE :::3000 → 端口被占用
  • SyntaxError → 代码语法错误
  • MODULE_NOT_FOUND → 路径或文件名错

二、如果是用 PM2 / 守护进程启动

PM2 查看日志

pm2 logs
pm2 status
pm2 describe <app_name>

重启并看错误

pm2 restart <app_name> --watch
pm2 logs <app_name>

三、如果是用 Docker 启动失败

docker logs <container_id>
docker-compose logs

常见问题:

  • node: not found → 基础镜像错
  • 端口未暴露
  • 启动命令写错(如 npm start 没定义)

四、检查依赖和环境

1. 依赖是否安装

npm install
# 或
yarn

2. Node 版本是否匹配

node -v

项目 package.json 里可能限制了:

"engines": {
  "node": ">=18"
}

五、检查端口 / 权限

端口被占用

lsof -i:3000
# 或
netstat -anp | grep 3000

权限问题(Linux)

  • 监听 80 / 443 需要 root
  • 日志目录无写权限

六、确认日志配置本身是否有问题

如果你是“写日志的库启动失败”:

  • winston / pino / log4js 配置错误
  • 日志目录不存在
  • 磁盘满了
df -h

七、最小复现法(最有效)

新建一个最小文件:

console.log("start ok")

如果能跑,说明是业务代码或配置问题。


八、你可以直接把这些信息发我

如果你愿意,可以贴:

  1. 启动命令
  2. 完整报错信息
  3. 是否用 PM2 / Docker
  4. Node 版本

我可以直接帮你定位是哪一步出的问题。

0 踩