zoukankan      html  css  js  c++  java
  • nginx筛选字段+excel统计

    nginx筛选字段+excel统计

      今天临下班的时候,领导叫我统计下即将举行的xx活动中,所有接口url在整天测试过程中,平均访问时间分别是多少,然后降序排序列出来,好让分析性能瓶颈。

      第一次遇到这样的需求,以为要搞很久,领导也比较体贴,知道我没弄过之后,竟然帮我问开发是否了解,linux是否有现成的统计函数,我都猜只能从nginx日志去分析的了~~~果不其然。

      幸好领导帮我化繁为简:叫我先筛选nginx中两列数据:url ,upstream_response_time,然后再导出来放到excel ,作进一步统计分析。

    一、nginx筛选字段

    1、先查看nginx中对日志格式定义

       log_format json '{"@timestamp":"$time_iso8601",'
      '"host":"$server_addr",'
      '"clientip":"$remote_addr",'
      '"size":$body_bytes_sent,'
      '"responsetime":$request_time,'
      '"upstreamtime":$upstream_response_time,'
      '"upstreamhost":"$upstream_addr",'
      '"http_host":"$host",'
      '"url":"$uri",'
      '"xff":"$http_x_forwarded_for",'
      '"referer":"$http_referer",'
      '"agent":"$http_user_agent",'
      '"status":"$status"}';  

    2、顺带观察日志输出 ——》非必须

    摘录一条具体日志,如下(为了保密,一些字段信息我改了下)

    {"@timestamp":"2021-05-31T09:10:02+08:00","host":"123.14.16.8","clientip":"119.129.123.213","size":8097,"responsetime":0.007,"upstreamtime":0.007,"upstreamhost":"172.12.11.14:8291","http_host":"act.ljysai.cn","url":"/gyp/gyp/images/logo_defaultHead.png","xff":"-","referer":"https://act.ljysai.cn/gyp/gyp/manage/index.html","agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36","status":"200"}

    3、最终核心处理命令:

     cat  活动.access.log | awk -F '"' '{print $30"	"$19}' | tr -d ':'  | tr -d ',' > /tmp/活动_20210531.log

    为啥要用 tr 命令呢,因为响应时间筛选完之后,实际上长这种样子

    然后我导出完之后,就不知道怎么进行excel处理了,还是我们的领导厉害呀,简直是excel小能力,请收下我的膝盖。。。。

    二、excel统计

    1、原始数据长这样:

    2、最终成品

    具体过程,我都是凭记忆敲的,可能有误导成分。。。为了不影响我领导伟大的杰作,俺自己复制一个玩

    (1)选中“数据透视表”

    重头戏来嘞。。。登登登~~~~!!!

    (2)两列数据全部选中,“确定”。然后第一列拖去“行”的空白框上,第二列拖去“值”的空白框

     (3)计算平均值

    参考:http://www.360doc.com/content/18/0114/16/30583536_721860402.shtml

    鼠标单击,选中“值”,“值字段设置”

     选择求平均值

     

     然后再把这个行的玩意再拉多一次下去,跟值放一起,最终成品如下图:

     (4)降序显示请求时间

     至此,大功告成~~~~

     

  • 相关阅读:
    delphi res 字符串资源
    delphi label1 文字在窗体上水平来回移动
    delphi Edit
    delphi CoolBar这个怎么弄没了
    delphi Components[i]清除所有edit控件中的内容
    delphi Caption 垂直显示标签文本
    delphi array应用 DayOfWeek星期几判断
    delphi 2010 资源文件使用
    delphi 18 屏蔽和替换 右键菜单
    delphi 16 网页缩放
  • 原文地址:https://www.cnblogs.com/windysai/p/14833625.html
Copyright © 2011-2022 走看看