网络流量日志的自定义采集,大数据学习的入门第一步
优采云 发布时间: 2021-05-31 07:10网络流量日志的自定义采集,大数据学习的入门第一步
说明
这次主要讲了网络流量日志的定制采集,这是学习大数据的第一步。 文章分为上下两部分。上半部分是背景介绍、原理分析、设计实现。上半部分主要以文字和原理为主。后半部分主要讲解实际部署,日志和事件的实现采集。
知识背景-网络访问日志
可以自定义采集的信息
以某电商公司为例,其自定义采集的数据日志格式如下:
原理分析
基本原理:在客户端访问的页面上添加内嵌代码,在页面加载时执行。发送requset携带请求,使用图片标签打包数据,实现跨域异步请求,指定服务器接收数据,解析存储数据,响应客户端(1*1b比例图片) .
*敏*感*词*
执行步骤
1. 用户的行为会触发浏览器对被统计页面的http请求,比如打开某个网页。
2. 打开网页,执行嵌入的 javascript 代码,并创建 ma.js 请求。这个请求指向服务端的ma.js代码块(分离嵌入的代码块,主要是解决两个服务之间的问题,后端修改采集的内容时,可以自己做)。
3. ma.js 由浏览器请求并执行。这个js文件就是数据采集脚本。
4. js请求会伪装成动态图片,将采集到的数据通过tttp参数传递给终端脚本。
5. 后台脚本解析固定格式并记录到访问日志中,并返回一个用于跟踪的ookie信息和一张1*1的图片给客户端。
埋点代码
在网页中预先添加一小段javascript代码。这个代码片段通常会动态创建一个脚本标签,并将 src 属性指向一个单独的 js 文件。这时候这个单独的js文件(图中绿色节点)会被浏览器请求执行,这个js往往就是真正的数据采集脚本。
设计与实现