码迷,mamicode.com
首页 > 其他好文 > 详细

数据采集收集阶段HDFS

时间:2016-04-23 14:57:11      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

1)课上提到使用过的网站:

百度统计:http://tongji.baidu.com/web/welcome/login

腾讯分析:http://ta.qq.com/

Google分析:https://www.google.com/intl/zh-CN/analytics/index.html

2)预习资料:

Lua简明教程:http://coolshell.cn/articles/10739.html

Lua5.3参考手册:http://cloudwu.github.io/lua53doc/manual.html

3)OpenResty最佳实践:https://moonbingbing.gitbooks.io/openresty-best-practices/content/index.html

 

采集流程:

技术分享

 

埋点放在A处,当有需要收集的数据时,埋点js在Bs处响应,并将页面相关信息缓存在Bs,采集脚本开始收集数据,

并将数据转发到后台B处,后台处理程序做出相应的处理。

技术分享

 

 技术分享

 

前端埋点:

例如:

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>demo1</title>

   <script type="text/javascript">

      var _maq=_maq||[];

      _maq.push([‘_account‘,‘user1‘]);

      _maq.push([‘ssss1‘,‘ssss2‘])

      _maq.push([‘dddd1‘,‘dddd2‘]);

     

      (function(){

         //自动引入脚本

         var ma =document.createElement("script");

         ma.type= "text/javascript";

         ma.async= true;

         ma.src= "http://localhost:8080/demo1/ma.js";

        

         var firstSc =document.getElementsByTagName("script")[0];

         firstSc.parentNode.insertBefore(ma,firstSc);

        

      })();

     

   </script>

</head>

<body>

 

</body>

</html>

 

收集脚本(ma.js):

//采集数据,并发送给后端处理程序

(function(){

   var paramas= {};

   //Document对象数据

   if(document){

      paramas.domain= document.domain||‘‘;//获取主机名(localhost

      paramas.url= document.URL||‘‘;//获取链接地址:http://localhost:8080/demo1/

      paramas.title= document.title||‘‘;//web页面标题

      paramas.referrer= document.referrer||‘‘;

   }

  

   //Window对象数据

   if(window &&windown.screen){

      paramas.sh= window.screen.height||‘‘;

      paramas.sw= window.screen.width||‘‘;

      paramas.cd= window.screen.colorDepth||‘‘;

   }

  

   //navigator对象数据

   if(navigator){

      paramas.lang= navigator.language || ‘‘;

   }

  

   //解析_maq

   if(_maq){

      for(var i in _maq){

         //alert(_maq[i][1]);

         switch(_maq[i][0]){

            case‘_account‘:

                paramas.account=_maq[i][1];

                break;

            default:

                break;

         }

      }

   }

  

   //拼接参数串

   var args="";

   for(var i in paramas){

      alert(paramas[i]);

      if(args!=""){

         args+=‘&&‘;

      }

      args+=i+‘=‘+encodeURIComponent(paramas[i]);

   }

   alert(args);

  

   //通过Image对象请求后端脚本

   var img = new Image(1,1);

   img.src="http://localhost:8080/demo1/1.gif?"+args;

   alert(img.src);

  

})();

数据采集收集阶段HDFS

标签:

原文地址:http://www.cnblogs.com/zhj983452257/p/5424571.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!