温馨提示×

linux js日志异常怎么排查

小樊
33
2026-10-20 02:44:11
栏目: 编程语言

在 Linux 环境下排查 JavaScript(Node.js 或前端构建/运行)日志异常,通常可以按下面思路一步步来。


一、明确“JS 日志异常”的类型

先判断是哪一类问题:

  1. Node.js 服务端异常(后端日志)
  2. 前端 JS 报错(浏览器 Console / 打包报错)
  3. 构建阶段异常(webpack / vite / babel)
  4. 日志本身异常(日志不打印、格式错乱、丢失)

二、通用排查流程(强烈推荐)

1. 找到日志位置

不同场景日志位置不同:

  • Node.js 应用
    # 常见位置
    /var/log/
    ~/app/logs/
    pm2 logs
    docker logs <容器名>
    
  • 前端构建
    npm run build 2>&1 | tee build.log
    
  • 系统级
    journalctl -u your-service
    dmesg | tail
    

2. 提高日志详细程度

DEBUG=* node app.js
NODE_ENV=development node app.js

或代码中:

console.error('ERR:', err);

3. 查看错误堆栈(最关键)

重点关注:

  • Error:
  • at Object.xxx
  • errno
  • code

示例:

TypeError: Cannot read property 'x' of undefined
    at app.js:23:10

➡ 直接定位到 app.js:23


4. 使用日志工具

  • pm2
    pm2 logs
    pm2 monit
    
  • journalctl
    journalctl -u node-app -f
    
  • tail
    tail -f app.log
    

三、Node.js 专项排查

1. 未捕获异常

process.on('uncaughtException', e => {
  console.error('UNCAUGHT:', e);
});
process.on('unhandledRejection', e => {
  console.error('REJECT:', e);
});

2. 内存 / CPU 异常

top
htop
node --inspect

3. 依赖问题

rm -rf node_modules package-lock.json
npm install

四、前端 JS 日志异常

1. 浏览器端

  • 打开 DevTools → Console
  • 查看:
    • 跨域错误
    • 资源 404
    • JS 语法错误

2. 打包报错

npm run build -- --verbose

常见原因:

  • 版本不兼容
  • 语法不被支持
  • 路径错误

五、日志“看起来异常”但不是报错

可能是:

  • 时区不对
  • 编码问题(UTF-8)
  • 日志级别设置错误
  • 多进程写同一文件冲突

解决:

logger.level = 'debug';

六、快速自查清单 ✅

  • [ ] 日志路径是否正确
  • [ ] 是否真正启动了服务
  • [ ] 是否有未捕获异常
  • [ ] Node / 浏览器版本是否匹配
  • [ ] 是否最近改过代码或依赖

如果你能补充:

  • 是 Node 还是 前端
  • 报错 日志原文
  • 使用 什么框架(Express / Vue / React)

我可以直接帮你定位具体问题。

0 踩