linux网站数据统计,[Linux] Nginx服务下统计网站的QPS

单位时间的请求数就是QPS,那么在nginx服务的网站下,如果要统计QPS并且按从高到低排列,需要使用awk配合sort进行处理

awk做的主要工作是把access每行日志按分隔符分开,然后循环每一行,存到一个数组里,如果只按时间不区分脚本路径,数组里存的数据是比如arr['[28/Nov/2019:14:12:23']=20 key是时间,value是次数

使用下面这个shell可以统计到只按时间的QPS

cat /var/log/nginx/access.log|awk '{a[$4]+=1;}END{for (i in a) { printf("%s%i

",i,a[i])}}'|sort -gr -k2|head

fee0ccfdef683bb8b9bf2ce71ac1637f.png

awk '{}END{}'这个的意思就是{}里面的会每行执行,创建一个数组,把当前$4的数据作为key,出现次数作为value,每出现一次加1,END后面的只会最后执行,END里面还有个for in循环,awk的分割规则需要根据自己的日志格式进行

sort -g是按数字排 -r是从高到低 -k2是排第二列

下面这个是把当前时间和脚本的地址也一块作为key,这样计算出来的是,单位时间的某个接口地址下的QPS,具体的分割规则需要根据自己的业务自行分割

cat /var/log/nginx/access.log|awk '{print $4 $8}'|awk -F '?' '{a[$1]+=1}END{for(i in a){printf("%s%d

",i,a[i])}}'|sort -gr -k2|head

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值