在 Linux 下排查 JS(JavaScript)日志/错误,要分场景来看:是前端 JS 还是Node.js(后端 JS),以及日志落在哪里。下面按常见情况给你一套实用方法。
如果你是用命令行启动的:
node app.js
错误会直接打印在终端。
如果后台运行:
node app.js > app.log 2>&1 &
tail -f app.log
grep 查错误关键字grep -i "error" app.log
grep -i "exception" app.log
grep -i "stack" app.log
tail -n 200 app.log | grep -i error
tail -f app.log
pm2 logs
pm2 logs app-name
pm2 logs --err
docker logs container_name
docker logs -f container_name
前端 JS 错误不会直接出现在 Linux 服务器日志里,但可以通过以下方式:
tail -f /var/log/nginx/access.log
只能看到请求,看不到 JS 报错。
前端用:
window.onerror = function(msg, url, line, col, error) {
fetch('/log', {
method: 'POST',
body: JSON.stringify({ msg, url, line, col, stack: error.stack })
});
};
然后查服务端日志。
grep -A 20 "Error" app.log
grep "2026-01-21 10:" app.log | grep error
grep -c "TypeError" app.log
tail -f + grep error如果你愿意,可以告诉我:
我可以直接帮你写精准的排查命令。