LINUX awk操作

公司要进行系统优化,现对nginx服务请求时间及请求量进行分析。

在linux下的nginx请求文件进行切割

获取access log 日志分析

1:获取uri和请求时间记录到tmp_0.log 
  cat app_access.log | awk -F '|' '{print $5 " " $11}' > tmp_0.log

 

2:将对应的请求URI及请求时间分别进行统计  请求次数(count),请求总时间(sum),平均时间(avg),最大请求时间(max),最小请求时间(min)

awk '{ sum_arr[$1]+=$2;count_arr[$1]+=1; min_arr[$1]=min_arr[$1]==''? $2 : ($2<min_arr[$1]?$2:min_arr[$1]) ;max_arr[$1]=$2>max_arr[$1]?$2:max_arr[$1] } END { for(i in sum_arr){print "action:"i" ,total_time:"sum_arr[i]" max:"max_arr[i]" count:"count_arr[i]" min:"min_arr[i]" avg:"sum_arr[i]/count_arr[i];} }'

 

posted @ 2017-08-20 16:24  amu2018  阅读(216)  评论(0编辑  收藏  举报