shell日志分析进阶篇

  前面我们说了shell分析日志常用指令,现在我们随ytkah一起看看shell日志分析进阶篇,假设日志文件为ytkah.log

//统计不重复抓取数量

1
cat ytkah.log | awk '{print $4}'|sort|uniq|wc -l

 

//统计所有状态码数量

1
awk '{print $10}' ytkah.log |sort|uniq -c

  

//统计某个目录抓取次数

1
grep "/shop" ytkah.log | awk '{print $4}' |sort |wc –l

  

//统计各个目录出现404响应码次数

1
cat ytkah.log |awk 'BEGIN{FS="/| "} {if($(NF-2)==404){print $5,$(NF-2)}}' |sort|uniq -c | sort -r

  

//统计404页面的抓取数量

1
awk '{if($10=="404"){print $0}}' ytkah.log|sort|uniq|wc -l

  

//统计每个ip下对应URL的抓取次数

1
awk '{print $6,$4}' ytkah.log |sort|uniq –c

  

//提取百度蜘蛛访问数量前10的网站目录及访问次数,并按降序排列

1
awk '{print $4}' ytkah.log |grep -P "[^/(a-zA-Z)|^/(a-zA-Z)/]"|awk -F"/" '{print $2}'|sort|uniq -c|sort -r|head -10

  

//提取某个目录百度蛛蛛访问次数

1
2
3
cat ytkah.log | grep "/shop/"| wc –l
cat ytkah.log |awk '{print $4}' |grep "/shop/" |wc –l
cat ytkah.log |awk '{print $4} |awk –F"/" '{print $2}'|grep "shop"|wc -l

  

//统计首页抓取的次数占总体抓取次数比率

1
cat ytkah.log |awk '{print $4}'|awk '{if($0=="/"){n=n+1}}END{print n/NR*100"%"}'

  

//统计404响应码占总响应码比率

1
cat ytkah.log |awk '{print $10}'|awk '{if($0=="404"){n=n+1}}END{print n/NR*100"%"}'

  

//计算百度抓取总时间与总抓取次数

1
cat ytkah.log|awk '{FS=" "} {print $2}'|awk -F":" '{print $2}'| sort |uniq -c|awk 'BEGIN{print "小时","次数"} {print $2,$1}'|awk '{for(n=0;n<5;n++){b=$2}} {a+=b} {print $0}END{print "总数"b,a}'

  

//计算百度抓取总字节数

1
cat ytkah.log |awk '{print $11}'|awk 'BEGIN{total=0}{total+=$1}END{print total}'

  

//计算平均每次每个网页抓取字节数(小数点后面大于5进1)

1
cat ytkah.log |awk '{print $11}'|awk 'BEGIN{total=0}{total+=$1}END{print total/NR}'

  

posted @   ytkah  阅读(1121)  评论(1编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
历史上的今天:
2017-12-07 【福利】公众平台全面开放原创功能
网址导航 gg N / G Sitemap

部分内容来源于网络,如有版权问题请联系删除

  
点击右上角即可分享
微信分享提示