免费注册 查看新帖 |

Chinaunix

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

[文本处理] 每天5G的nginx日志,需要怎么分析? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-12-06 13:17 |只看该作者 |倒序浏览
RT,要分析出每IP的访问数量和每IP的访问内容。
61.4.184.92 - - [05/Dec/2013:00:10:05 +0800] "GET /data/?areaid=329103324&type=observe&date=201312042349&appid=7fde98&key=BUyFU0GyXhzGNDIFEDMQaortggDQ= HTTP/1.1" 200 76 "-" "Dalvik/1.6.0 (Linux; U; Android 4.1.1; MI 2S MIUI/JLB23.0)" -
61.4.184.91 - - [05/Dec/2013:00:10:05 +0800] "GET /data/?areaid=101243506&type=observe&date=201301012336&appid=7cfdf9&key=oMqeris3J3IZ3CHkbOKd06X5NYg= HTTP/1.1" 200 77 "-" "Dalvik/1.4.0 (Linux; U; Android 4.0; US900G Build/GRK39F)" -
如示例数据中
1统计出每个用户请求的数量,(用户由appid字段的值来区分)
2每个用户请求的areaid和type,
3每个IP访问的数量
每天的日志有5G或者更多,这样的数据怎么处理?

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:58:11
2 [报告]
发表于 2013-12-06 13:32 |只看该作者
这么大文件,。。。。能切成小文件 来处理

论坛徽章:
5
亥猪
日期:2013-10-15 13:41:04CU十二周年纪念徽章
日期:2013-10-24 15:41:34申猴
日期:2013-10-28 10:55:45辰龙
日期:2013-10-31 13:29:29丑牛
日期:2014-02-14 11:25:54
3 [报告]
发表于 2013-12-06 13:34 |只看该作者
这个日志是累加的么?
每一小时处理上一个小时的数据可以么?

论坛徽章:
0
4 [报告]
发表于 2013-12-06 13:44 |只看该作者
回复 3# lkk_super

怎么一小时处理一次?这个是基于日期来处理的?假如的昨天的数据结果今天进行分析来执行对应的策略,一小时也生成170M吧?一天的处理出来再进行汇总也可以,
反正一天的请求是1亿条,每成小时也得4-500万了,这个用shell能处理得来吗?关键是我还不会写这样的....谁教一下。。网上也没找到现成的工具
   

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
5 [报告]
发表于 2013-12-06 13:45 |只看该作者
根据你提供的数据:
  1. [root@localhost ~]# awk '{appid=gensub(/.*appid=([^&]*).*/,"\\1",1);areaid=gensub(/.*areaid=([^&]*).*/,"\\1",1);type=gensub(/.*type=([^&]*).*/,"\\1",1);IP=$1;a[appid]++;b[appid]=b[appid]?b[appid]" "areaid:areaid;c[appid]=c[appid]?c[appid]" "type:type;d[IP]++}END{for(i in a){printf "appid: %s\nnumber of request: %d\nareaid of request: %s\ntype of request: %s\n\n",i,a[i],b[i],c[i]}for(i in d)print i,d[i]}' i
  2. appid: 7cfdf9
  3. number of request: 1
  4. areaid of request: 101243506
  5. type of request: observe

  6. appid: 7fde98
  7. number of request: 1
  8. areaid of request: 329103324
  9. type of request: observe

  10. 61.4.184.91 1
  11. 61.4.184.92 1
  12. [root@localhost ~]#
复制代码

论坛徽章:
93
2015年辞旧岁徽章
日期:2019-10-10 10:51:15CU大牛徽章
日期:2014-02-21 14:21:56CU十二周年纪念徽章
日期:2020-10-15 16:55:55CU大牛徽章
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大牛徽章
日期:2019-10-10 10:55:38季节之章:春
日期:2020-10-15 16:57:40ChinaUnix元老
日期:2019-10-10 10:54:42季节之章:冬
日期:2019-10-10 10:57:17CU大牛徽章
日期:2014-02-21 14:22:52CU大牛徽章
日期:2014-03-13 10:40:30CU大牛徽章
日期:2014-02-21 14:23:15
6 [报告]
发表于 2013-12-06 13:51 |只看该作者
本帖最后由 seesea2517 于 2013-12-06 13:51 编辑

有点像这个:
http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=4086457
第二题:

    请编写脚本监控日志文件中的关键字<Error>,一旦发现该关键字就马上发邮件给admin@ChinaUnix.net,样例数据见附件wls_ms1.out,要求如下:
    (1)假设该脚本在crontab中每10分钟执行一次,每次运行时只检测最近十分钟之内的日志里面有没有出现关键字,十分钟之前的日志不要误报。
    (2)样例数据仅供参考,实际日志文件比较大(比如1GB),请充分考虑代码效率。
    (3)应用程序会实时地更新这个日志文件,因此不允许对该文件进行分割。

论坛徽章:
0
7 [报告]
发表于 2013-12-06 13:51 |只看该作者
回复 5# yestreenstars


    先试试,我这下载的数据4.7G,还没拖到虚拟机里去呢。

论坛徽章:
0
8 [报告]
发表于 2013-12-06 14:09 |只看该作者
回复 5# yestreenstars


    虚拟机里面2G内存处理了5分钟无结果。

论坛徽章:
0
9 [报告]
发表于 2013-12-06 14:15 |只看该作者
我去,这玩意处理10分钟无果啊。

论坛徽章:
32
处女座
日期:2013-11-20 23:41:20双子座
日期:2014-06-11 17:20:43戌狗
日期:2014-06-16 11:05:00处女座
日期:2014-07-22 17:30:47狮子座
日期:2014-07-28 15:38:17金牛座
日期:2014-08-05 16:34:01亥猪
日期:2014-08-18 13:34:25白羊座
日期:2014-09-02 15:03:55金牛座
日期:2014-11-10 10:23:58处女座
日期:2014-12-02 09:17:52程序设计版块每日发帖之星
日期:2015-06-16 22:20:002015亚冠之塔什干火车头
日期:2015-06-20 23:28:22
10 [报告]
发表于 2013-12-06 14:18 |只看该作者
回复 9# yu34po
那要尝试用perl来处理了,我待会有空给你写个~

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

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP