在做服务端的过程中,经常需要分析日志的数据,使用专业的工具又没有必要。使用shell分析日志是一个不错的选择,这里涉及的命令包括grep,zgrep,cat,zcat, xargs。
grep和zgrep都是用来在文件中查询文本,其中grep对应普通的文本文件,而zgrep对应是.gz的压缩文件。
grep -nr "world" *.log
zgrep -e "GET /api" *.gz
cat和zcat可以将文件的内容输出,cat对应不同文件,zcat对应压缩文件。
cat access.log | more
zcat access.1.gz | more
先看下面这个命令
ls *access*.gz | xargs -I {} zgrep -E "/api/recommend.+utm_source=worlds[1|3|5|6|7|8]?" {} | grep "22/Feb/2020" | wc -l
功能统计API接口的在2020.2.22的访问次数。
结合这两个命令shell可以做更复杂的日志分析。
一些例子:
#查看当天访问页面排前10的
$ grep -rn access.log | awk '{print $7}' | sort | uniq -c | sort -nr | head -n 10
#当天ip连接数,统计ip地址的总连接数
$ grep -rn access.log | awk '{print $1}' | sort | uniq -c | sort -nr
#统计安卓或iPhone访问次数
grep -rn access.log|grep iPhone |awk '{print $1}'|sort |uniq -c|sort -nr
GLaDOS机场怎么样?| 免费试用,教育邮箱可以免费1年Clash of Magic打不开:详细解决方法和FAQv2ray苹果iPhone使用教程Clash软件全面解读:教程、使用技巧与常见问题解答探索 ShadowRock 节点与小火箭加速器节点购买,畅享无忧网络体验搬瓦工v2ray域名使用教程深入解析loaded loaded etc systemd system v2ray.service enabled vendor preset disabledClash宽版戒指:特点、款式、材质、佩戴方法及常见问题shadowrocket小火箭价格、功能、购买及使用教程2019年最新shadowrocket节点分享及使用教程