在 Linux 环境下定位 JavaScript(JS)日志错误,通常取决于 JS 运行环境(浏览器 / Node.js / 前端构建工具)。下面按常见场景给你一套实用思路。
如果是通过 pm2、systemd、docker 运行:
# pm2
pm2 logs
pm2 logs app_name
# systemd
journalctl -u your-service -f
# docker
docker logs -f container_id
node app.js
错误通常会显示:
NODE_ENV=development node app.js
或在代码中:
process.on('uncaughtException', e => {
console.error(e);
});
/var/log/logs/~/ .pm2/logs/F12 → Console / Network / Sources
如果是 Nginx:
tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log
常见方案:
window.onerror = function(msg, url, line) {
fetch('/log', {
method: 'POST',
body: JSON.stringify({ msg, url, line })
});
};
npm run build
看终端输出的:
生产环境排查:
// vite.config.js
export default {
build: {
sourcemap: true
}
}
console.log('here', variable);
# 实时看日志
tail -f error.log
# 搜关键字
grep -n "TypeError" app.log
# 看最近修改的文件
ls -lt | head
如果你能告诉我:
我可以帮你 精准定位到具体代码问题。