免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6416 | 回复: 3
打印 上一主题 下一主题

[文本处理] nginx日志问题 [复制链接]

论坛徽章:
1
卯兔
日期:2013-12-09 08:47:37
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-05-24 11:36 |只看该作者 |倒序浏览
本帖最后由 mingming_song 于 2014-05-26 18:58 编辑

各位麻烦个事情,老生常谈的nginx的日志处理问题,找出某天nginx的访问TOP10的URL,以及URL中最大,最小,平均时间

处理还是截取 request 字段和request_time字段,但是单独截取一段进行排序,去重,统计之后结果是正确的,但是麻烦的是。同时使用两个字段指定字段排序去重之后得到的结果和我单独使用字段得出的结果不太一致,

这里是log_format格式

  log_format  main  '$remote_addr $host $remote_user [$time_local] "$request" '
                    '$status $body_bytes_sent "$http_referer" "$http_user_agent" '
                    '"$gzip_ratio" $http_x_forwarded_proto $http_x_real_ip '
                    '$request_time $upstream_response_time $pipe';

cat log | awk -F"[./]" '{print $9}' | sort | uniq -c | sort -r -k1 | head -n 20  单纯的只是统计了URL

cat log | awk -F"[? ]" '{print $7,"|",$(NF-2)}' | sort -t"|" -k1 | uniq -c | head -n 20 的出来的URL排名和时间都不同于之前的,请问这边是哪里出的问题

另外计算时间上面,利用awk是sum统计出来的时间和真实的时间看起来也不太一致,不知道是哪里出了问题,awk不是特别熟悉

ps: 附上日志部分,特别信息做了特别处理
  1. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "GET /EditText_view.action?textId=857548 HTTP/1.1" 200 7388 "http://www.so.com/s?q=manbang\xE6\x9B\xBC\xE9\x82\xA6\xE6\x97\x97\xE8\x88\xB0\xE5\xBA\x97&ie=utf-8&src=360sou_home" "Mozilla/5.0 (Windows; U; Windows NT 5.2) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13" "3.22" http 42.120.64.7 0.149 0.148 .
  2. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "POST /imgcenter/upload HTTP/1.1" 200 99 "-" "Java/1.6.0_25" "-" http 210.14.140.203 0.013 0.013 .
  3. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "GET /EditText_view.action?textId=1470909&client=key:LiFangWangForiPhone&mobile=1&sourcetype=weixin HTTP/1.1" 200 22448 "-" "Mozilla/5.0 (Linux; U; Android 4.3; zh-cn; SM-N9005 Build/JSS15J) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 MicroMessenger/5.2.1.400" "-" http 124.239.208.135 0.194 0.194 .
  4. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "GET /view.action?postId=15471449&from=m_media HTTP/1.1" 302 0 "http://www.xxxx.com/1626925" "Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10B329 MicroMessenger/5.1" "-" http 14.158.241.211 0.006 0.005 .
  5. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "GET /EditText_view.action?cf=false&textId=1396577 HTTP/1.1" 200 28187 "-" "Mozilla/5.0" "-" http 183.60.198.134 0.531 0.531 .
  6. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "GET /media/movie HTTP/1.1" 200 147899 "-" "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1)" "-" http 101.28.10.10 5.288 0.226 .
  7. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:01 +0800] "GET /do_not_delete/noc.gif HTTP/1.1" 200 2358 "-" "ChinaCache" "-" http 61.178.248.109 0.002 0.001 .
  8. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:02 +0800] "GET /EditPicture_photoView.action?pictureId=5706511 HTTP/1.1" 200 5376 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "3.38" http 66.249.73.216 0.223 0.222 .
  9. 192.168.xx.xx www.xxxx.com - [15/May/2014:23:59:02 +0800] "GET /timeline_reblog.action?postId=1511970 HTTP/1.1" 302 0 "http://www.xxxx.com/xxxx.action?postId=1511970" "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" "-" http 221.204.7.62 0.006 0.006 .
复制代码

论坛徽章:
33
荣誉会员
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT运维版块每日发帖之星
日期:2016-04-17 06:23:27操作系统版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-24 06:20:0015-16赛季CBA联赛之天津
日期:2016-05-06 12:46:59
2 [报告]
发表于 2014-05-24 15:46 |只看该作者
没有原始数据.


另外, 个人以为, 处理这么复杂的需求, shell没有优势. 我更喜欢 perl 来完成这个工作.

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
3 [报告]
发表于 2014-05-24 21:38 |只看该作者
贴一段日志出来看看

论坛徽章:
1
卯兔
日期:2013-12-09 08:47:37
4 [报告]
发表于 2014-05-26 18:59 |只看该作者
这段时间整理机房的事情,所以才看到回复不好意思,日志已补充回复 3# Shell_HAT


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP