网站内容采集系统(网站流量日志数据分析系统开发流程(1.-7):2.日志采集系统 )
优采云 发布时间: 2022-04-02 15:16网站内容采集系统(网站流量日志数据分析系统开发流程(1.-7):2.日志采集系统
)
网站交通日志数据分析系统开发流程
1.需求在网站web流量日志分析的场景中,数据采集部分的可靠性和容错性通常不是很严格,所以使用通用flume log采集@ > 框架完全可以满足需求。2.Flume 日志采集系统
2.1 水槽 采集
Flume 采集 系统的设置比较简单:
1、在服务器上部署代理节点并修改配置文件
2、启动代理节点,将采集中的数据聚合到指定的HDFS目录,用于nginx日志生成场景。如果通过flume(1.6)采集,无论是Spooling DirectorySource还是Exec Source都不能满足动态实时采集的需要。在flume当前稳定版1.7中,提供了一个非常好用的TaildirSource,使用这个source可以对一个目录进行监控和正则表达式匹配,这个目录下的文件名是实时采集的。
核心配置如下:
a1.sources = r1
a1.sources.r1.type = TAILDIR
a1.sources.r1.channels = c1
a1.sources.r1.positionFile = /var/log/flume/taildir_position.json
a1.sources.r1.filegroups = f1 f2
a1.sources.r1.filegroups.f1 = /var/log/test1/example.log
a1.sources.r1.filegroups.f2 = /var/log/test2/.*log.*
filegroups:指定文件组,可以有多个,用空格隔开;(TailSource可以同时监控tail多个目录下的文件)
positionFile:配置检查点文件的路径。checkpoint文件会将tail文件的位置保存为json格式,解决了断点无法恢复的缺陷。
filegroups.:配置每个文件组的绝对文件路径。文件名可以与正则表达式匹配。通过以上配置,可以监控文件内容的增加和文件的增加。与配置的文件名正则表达式不匹配的文件不会被拖尾。
3.示例数据内容
日志数据格式:
58.215.204.118 - - [18/Sep/2013:06:51:35 +0000] "GET /wp-includes/js/jquery/jquery.js ?ver=1.10.2 HTTP/1.1"304 0 "" "Mozilla/5.0 (Windows NT 5.1; rv:2 3.0) 壁虎/20100101 火狐/23.0"
字段解析:
1、访客 ip 地址: 58.215.204.118
2、访客用户信息: - -
3、请求时间:[18/Sep/2013:06:51:35 +0000]
4、请求方式:GET
5、请求的 url:/wp-includes/js/jquery/jquery.js?ver=1.10.2
6、请求所用协议:HTTP/1.1
7、响应码:304
8、返回的数据流量:0
9、访客的来源 url:http://blog.fens.me/nodejs-socketio-chat/
10、访客所用浏览器:Mozilla/5.0 (Windows NT 5.1; rv:23.0) Gecko/20100101
Firefox/23.0