系統出現問題,須要快速定位日誌文件錯誤信息,記錄一些小技巧,方便運維。本文持續更新。bash
例如查找問題行號是100,查看90-110行的日誌運維
1. cat -n 文件 | grep "關鍵字" 查出關鍵字所在行號spa
2. cat -n 文件 | tail -n +90 | head -n 20 日誌
tail -n +90:從90行開始的全部行code
head -n 20:前20行,也就是從90行到109行ip
sed '/開始時間/, /結束時間/p' 文件class
不管用什麼方法,會出現查找出不少日誌,使用more分頁顯示,例如 :sed
sed '/開始時間, /結束時間/p' 文件 | morefile
或者寫入文件中,方便查看,例如:搜索
cat -n 文件 | tail -n +90 | head -n 20 > ***.txt
方法二在產線上使用搜索時間很長,能夠用一種更普通的方法代替。
grep -n '20:45:23' ***.log 找到行號,再使用方法一。
因爲日誌文件積累過多,須要壓縮,而在產線上每每不能解壓縮,由於權限問題,並且解壓縮比較麻煩,zgrep提供了在不解壓的狀況下,查看壓縮日誌,先記錄命令:
zgrep --binary-files=text '關鍵字' 壓縮文件
若是zip壓縮包不少的話,,用以下方法,找出包含關鍵字的壓縮包:
zgrep --binary-files=text '關鍵字' *.zip
zip和tar壓縮文件都是可行的。