在 Ubuntu 上过滤 Node.js 日志,常见做法取决于日志写在哪、用什么方式运行 Node.js。下面按场景给你总结几种实用方法。
grep 实时过滤node app.js | grep ERROR
只看错误日志:
node app.js 2>&1 | grep -i error
node app.js > app.log 2>&1 &
grep ERROR app.log
实时跟踪:
tail -f app.log | grep ERROR
pm2 logs
pm2 logs app-name
pm2 logs | grep ERROR
或:
pm2 logs app-name --lines 100 | grep WARN
journalctl -u node-app.service
journalctl -u node-app.service -f
journalctl -u node-app.service | grep ERROR
只看今天:
journalctl -u node-app.service --since today
console.log('[INFO] server started')
console.error('[ERROR] db connection failed')
过滤:
grep '\[ERROR\]' app.log
jq(JSON 日志)cat app.log | jq 'select(.level=="error")'
lnav(日志查看器)sudo apt install lnav
lnav app.log
grep / jq / lnav 过滤console.log如果你能告诉我:
我可以给你更精确的过滤命令。