小知识:awk 分析web日志(页面执行时间)(常见应用3)

前一段时间,我写过一篇文章,shell脚本分析 nginx日志访问次数最多及最耗时的页面(慢查询),其中提到了分析耗时页面重要性。今天主要讲的,是通过awk分析日志,快捷得到执行时间。在性能以及效率方面比前一篇提到的有很大提高!

一、web日志文件格式

复制代码

代码如下:

222.83.181.42 – – [09/Oct/2010:04:04:03 +0800] GET /pages/international/tejia.php HTTP/1.1 “200” 15708 “-” “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Sicent; WoShiHoney.B; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)” “-” 0.037</p> <p>按照空格分隔的话,最后一个字段[0.037] 是页面执行时间,第7个字段 是页面访问地址。

二、执行代码

复制代码

代码如下:

awk BEGIN{

print “Enter log file:”;

getline logs;

#logs=”/var/log/nginx/access.log-20101008″;

OFMT=”%.3f”;

while(getline < logs)

{

split($7,atmp,”?”);

aListNum[atmp[1]]+=1;

aListTime[atmp[1]]+=$NF;

ilen++;

}

close(logs);

print “\r\ntotal:”,ilen,”\r\n======================================\r\n”;

for(k in aListNum)

{

print k,aListNum[k],aListTime[k]/aListNum[k] | “sort -r -n -k3”;

} </p> <p>} 

结果:

%小知识:awk 分析web日志(页面执行时间)(常见应用3)-猿站网-插图

性能: 

%小知识:awk 分析web日志(页面执行时间)(常见应用3)-1猿站网-插图 422780条日志,统计完成速度是:5秒左右。
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:shell awk实现实时监控网卡流量脚本(常见应用二)

2023-6-6 8:01:10

建站知识

小知识:awk 多行合并(next 使用介绍) (常见应用4)

2023-6-6 8:17:57

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索