项目线上报错,在服务器查看日志,3G的日志,而且还一直在更新,没有办法在线排查,只能截取相关报错信息查看。废话不多说,上代码!
查询关键字所在行数:
cat -n service-output-tax.log | grep 关键字
通过查出来的行数,拉去本地或者在服务器中浏览:
sed -n "25800,26500p" service-output-tax.log
sed -n "25800,26500p" service-output-tax.log > /mnt/jp4mx1tm2okaponais9jl.txt
线上实战排查问题,其实也是挺简单的~
至此结束!
补充:
多条件或匹配
grep -E '关键字1|关键字2|关键字3' info.log
模糊查询关键字并显示匹配行上下10行,以及行号
grep -n -C10 '流水号:b57a9d493b' message.log
日志压缩包查询
zcat 文件名.gz | grep 特定条件
如果报错:
Binary file standard input matches
使用 二进制匹配:
zcat 文件名.gz | grep -a 特定条件