日誌排查(定位線上問題)
從日誌裡快速找到報錯和上下文。
範本正文
# 1) 先看最近的錯誤 tail -n 500 app.log | grep -i "error\|exception" | tail -50 # 2) 看某個請求 ID 的完整鏈路 grep "req-8f3a91" app.log # 3) 統計錯誤類型分布 grep -oE "Error: [A-Za-z]+" app.log | sort | uniq -c | sort -rn | head # 4) 看某個時間段(配合日誌時間格式) sed -n '/2026-10-04 10:0/,/2026-10-04 10:1/p' app.log # 5) 實時過濾(只看某個用戶的請求) tail -f app.log | grep "user_id=12345" # 6) 大日誌按時間切分後搜索 awk '$1=="2026-10-04" && $2>="10:00"' app.log | head -100
怎麼用
線上出問題時按這個順序查。
使用要點
- 先按「請求 ID」串出完整鏈路,比逐行翻日誌快得多。
- 統計錯誤分布能看出是偶發還是系統性問題,先解決問題量最大的。