温馨提示×

如何定位linux js日志错误

小樊
42
2026-10-05 12:20:13
栏目: 编程语言

在 Linux 环境下定位 JavaScript(JS)日志错误,通常取决于 JS 运行环境(浏览器 / Node.js / 前端构建工具)。下面按常见场景给你一套实用思路。


一、Node.js 环境(服务端 JS)

1. 查看进程日志

如果是通过 pm2、systemd、docker 运行:

# pm2
pm2 logs
pm2 logs app_name

# systemd
journalctl -u your-service -f

# docker
docker logs -f container_id

2. 直接运行看错误

node app.js

错误通常会显示:

  • 文件名
  • 行号
  • 调用栈(stack trace)

3. 开启详细日志

NODE_ENV=development node app.js

或在代码中:

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

4. 常见日志位置

  • /var/log/
  • 项目目录下的 logs/
  • ~/ .pm2/logs/

二、浏览器端 JS(前端)

1. 浏览器开发者工具(最重要)

F12 → Console / Network / Sources
  • Console:JS 报错、警告
  • Network:接口 404 / 500
  • Sources:断点调试

2. 服务器访问日志

如果是 Nginx:

tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

3. 前端错误上报

常见方案:

  • Sentry
  • 自建日志接口
window.onerror = function(msg, url, line) {
  fetch('/log', {
    method: 'POST',
    body: JSON.stringify({ msg, url, line })
  });
};

三、构建工具相关(Webpack / Vite)

1. 构建报错

npm run build

看终端输出的:

  • 文件路径
  • loader / plugin 错误

2. 源码映射(source map)

生产环境排查:

// vite.config.js
export default {
  build: {
    sourcemap: true
  }
}

四、通用排查思路(很重要)

  1. 先复现错误
  2. 看错误栈第一行
  3. 确认是 JS 错还是接口错
  4. 区分环境(dev / prod)
  5. 加日志定位
console.log('here', variable);

五、快速定位命令合集

# 实时看日志
tail -f error.log

# 搜关键字
grep -n "TypeError" app.log

# 看最近修改的文件
ls -lt | head

如果你能告诉我:

  • JS 是 前端还是后端
  • 用的什么框架(Node / Vue / React / Express)
  • 错误日志内容或截图

我可以帮你 精准定位到具体代码问题。

0 踩