在 Linux 下“搜索 JS 日志”通常分几种场景,下面按最常见用法给你总结,基本覆盖 90% 需求。
常见位置:
# Node.js 服务
/var/log/xxx.log
~/.pm2/logs/xxx.log
./logs/xxx.log
# Nginx 反代(前端 JS 报错)
/var/log/nginx/access.log
/var/log/nginx/error.log
# 浏览器 JS 日志(服务端拿不到,需前端上报)
grep "error" app.log
grep "TypeError" app.log
grep "undefined" app.log
grep -i "js error" app.log
grep -n "ReferenceError" app.log
grep -C 5 "Uncaught" app.log
grep -A 10 "Exception" app.log
grep -B 10 "stack" app.log
tail -f app.log | grep "error"
tail -f app.log | grep -E "error|warn|exception"
grep "$(date +%Y-%m-%d)" app.log
awk '$0 >= "2026-01-21 10:00" && $0 <= "2026-01-21 11:00"' app.log
less app.log
进入后:
/error 搜索n 下一个Shift+n 上一个G 跳到末尾grep "error" app.log | jq '.message'
jq 'select(.level=="error")' app.log
⚠️ 服务器日志看不到浏览器 JS 错误
解决方案:
window.onerror# 实时看 JS 错误
tail -f app.log | grep -i "error\|exception\|undefined"
# 查某用户 JS 问题
grep "userId=123" app.log | grep "error"
# 今天所有 JS 异常
grep "$(date +%Y-%m-%d)" app.log | grep -i "js"
如果你能告诉我:
我可以直接给你精准命令。