linux业务访问量,耗时的统计

1. 如果业务入口用的是NGINX,,那么业务访问量统计可以从NG的acc日志获取如下

awk ‘{ print $1 }’   host.access.acc  | sort -n  | wc -l

输出结果:

1468

代表业务访问量有1468个

2.如果要统计具体IP业务访问量,可以获取如下:

awk ‘{ print $1 }’   host.access.acc  | sort -n  |   uniq -c

输出结果:

44   30.99.225.141

104 30.99.225.142

70   30.99.225.143

51   30.99.225.144

53   30.99.225.145

74   30.99.225.146

76   30.99.225.147

85   30.99.225.148

86   30.99.225.149

87   30.99.225.150

前面数字代表访问量,后面IP代表这个访问量的具体IP

3.如果要统计一段时间具体IP的访问量,比如获取这一个小时的访问量,可以获取如下:

sed -n '/2020:22:58/,/2020:23:58/p' host.access.acc  |  awk '{print $1}' | sort -n |  uniq -c 

输出结果:

1 30.99.225.141

2 30.99.225.142

1 30.99.225.143

1 30.99.225.144

5 30.99.225.145

2 30.99.225.146

3 30.99.225.147

1 30.99.225.148

1 30.99.225.149

1 30.99.225.150

4如果要统计一段时间接口访问的平均响应时间也即耗时时间,可以参考如下

比如NG的acc日志的响应时间是在最后一个字段,统计某个时间段10分钟的平均耗时时间

sed -n '/2020:16:00/,/2020:16:10/p'  host.access.acc  | awk  '{sum+=$NF}END{print sum/NR}'

输出结果为:

0.395495

5 如果要统计某个时间段耗时时间大于某个时长,可以参考如下

sed -n '/2020:16:00/,/2020:16:10/p'  host.access.acc | awk '{if ($NF>=1) {print $NF}}'

输出结果为:

1.017

1.987

4.700

11.166

1.571

4.795

2.342

10.867

4.660

1.856

原文地址:https://www.cnblogs.com/wangnengwu/p/14075690.html