在 Debian 上“过滤 JS 日志”通常分几种场景:系统/应用日志(journalctl / syslog)、Node.js 应用日志文件、浏览器前端 JS 日志。下面按常见情况给你实用方法。
如果你的 JS 服务是用 systemd 管理的(如 node app.js):
# 查看某服务的全部日志
journalctl -u your-node-service.service
# 实时查看
journalctl -u your-node-service.service -f
# 按时间过滤
journalctl -u your-node-service.service --since "2024-01-01 00:00:00"
# 关键词过滤(如 ERROR)
journalctl -u your-node-service.service | grep ERROR
# 只看今天
journalctl -u your-node-service.service --since today
假设日志在 /var/log/app/ 或项目目录:
# 查看错误日志
cat app.log | grep ERROR
# 实时过滤
tail -f app.log | grep ERROR
# 显示前后几行
grep -C 3 ERROR app.log
# 多关键词
grep -E "ERROR|WARN" app.log
# 按时间范围(如果日志有时间戳)
grep "2024-01-01 10:" app.log
jq(如果是 JSON 日志)cat app.log | jq 'select(.level=="error")'
前端 JS 日志一般在浏览器控制台:
如果你把前端日志发到服务器(如 Sentry、ELK),那就按后端日志方式过滤。
在 Node.js 中控制日志级别(以 winston 为例):
logger.add(new transports.File({
filename: 'app.log',
level: 'info' // error / warn / info / debug
}));
sudo apt install jq less lnav
lnav:高级日志查看器(支持自动识别格式)lnav /var/log/app/app.log
如果你能具体说明:
我可以给你更精确的命令。