官方服务微信:dat818 购买与出租对接

网站流量统计案例概述:指标分析助力网站服务改进

2万

主题

2

回帖

8万

积分

管理员

积分
85913
发表于 2025-2-4 21:10:45 | 显示全部楼层 |阅读模式
    网站流量统计案例概述

    背景说明

    网站流量统计是改善网站服务的重要手段之一。通过在网站上获取用户的行为,可以分析哪些内容受到欢迎以及哪些页面有问题,以便更有针对性的网站改进活动。

    统计指标描述

    常见的网站流量统计指标通常包括以下分析:

    1)根据在线情况分析

    在线情况分析记录了在线用户的活动信息,包括:访问,访问者,页面,当前的住宿页面等。这些功能对企业实时掌握自己的网站流量非常有帮助。

    2)根据时间段分析

    时间分析在网站的任何时间内都提供流量变化。或一定时期的流量从一定时间段内发生变化,例如分布时间,每日访问分布,对公司了解网页浏览网页本质的时间段有很好的分析

    3)根据源分析

    来源分析提供了诸如访问,IP,独立访问者,新访问者,新访问者浏览时间以及车站的全部查看之类的数据。这些数据可以直接使公司了解促进结果的方式,从而更明显地分析这些网站的广告效果。

    该项目统计的索引说明

    系统架构设计

    燃烧点和数据收集

    概述

    所谓的埋藏点是在应用程序中的特定过程中收集一些信息,以跟踪应用程序的应用,然后使用它进一步优化产品或提供操作的数据支持,即通过数据掩埋点),访问者(),网站上的时间,页面查看(页面视图,也称为页面浏览)和跳跃率(速率,也可以称为弹跳率)等。

    用于数据处理的典型数据平台由以下5个步骤组成:

    在其中,我们认为第一步,即掩埋的点和收集是最基本的问题。数据收集是否丰富,收集到的数据是否准确,以及该集合是否及时会直接影响整个数据平台应用的效果。

    埋葬点的两种方法:

    第一种类型:该公司在产品中开发成埋入的代码以收集它。编写埋入的代码,例如JS,然后将其放在某个应用程序网站上。

    第二个:使用第三方统计工具,例如,Baidu ,Rubik's Cube,App Annie,Data等。

    该项目的埋藏点实施

    我们使用JS代码实现埋藏点。编写特定的JS脚本,然后将其嵌入需要用作日志的网页上(实际上是通过

    日志数据收集模块描述

    概述

    日志集合的目的是最终将用户的访问日志在HDFS文件系统的特定目录中带入目标网站,以提供下一个用于处理的数据清洁模块。要完成这项工作,您需要将其分为以下步骤:

    1)JS埋葬点

    2)日志服务器构建

    3)日志收集

    以下四个步骤详细说明:一一详细说明:

    1。JS埋葬点

    我们需要收集对网页的访问。一般方法是在此网页上嵌入JS脚本,因此当用户访问页面时,页面上的JS脚本将在页面上动态添加标签,而SRC属性指向SRC属性的方向。日志服务器下透明图片的URL地址。

    在URL参数上,将有一些用户访问信息(例如面试页面的URL,识别用户身份等),以便可以通过分析日志文件(通常是nginx或)日志文件来获得此信息。该JS埋葬脚本可以单独编写,代码胶片如下:

    JS主功能号码:

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'>    <pre><code class="prism language-js"><span class="token keyword">function</span> <span class="token function">ar_main</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{
   </span>

<span class="token comment">//收集完日志 提交到的路径</span>
<span class="token keyword">var</span> dest_path   <span class="token operator">=</span> <span class="token string">"http://localhost:8090/LogDemo/servlet/LogServlet?"</span><span class="token punctuation">;</span>
<span class="token keyword">var</span> expire_time <span class="token operator">=</span> <span class="token number">30</span> <span class="token operator">*</span> <span class="token number">60</span> <span class="token operator">*</span> <span class="token number">1000</span><span class="token punctuation">;</span><span class="token comment">//会话超时时长</span>

<span class="token comment">//处理uv</span>
<span class="token comment">//--获取cookie ar_stat_uv的值</span>
<span class="token keyword">var</span> uv_str <span class="token operator">=</span> <span class="token function">ar_get_cookie</span><span class="token punctuation">(</span><span class="token string">"ar_stat_uv"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">var</span> uv_id <span class="token operator">=</span> <span class="token string">""</span><span class="token punctuation">;</span>
<span class="token comment">//--如果cookie ar_stat_uv的值为空</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>uv_str <span class="token operator">==</span> <span class="token string">""</span><span class="token punctuation">)</span><span class="token punctuation">{
   </span>


<span class="token comment">//--为这个新uv配置id,为一个长度20的随机数字</span>
uv_id <span class="token operator">=</span> <span class="token function">ar_get_random</span><span class="token punctuation">(</span><span class="token number">20</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//--设置cookie ar_stat_uv 保存时间为10年</span>
<span class="token function">ar_set_cookie</span><span class="token punctuation">(</span><span class="token string">"ar_stat_uv"</span><span class="token punctuation">,</span> uv_id<span class="token punctuation">,</span> <span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token comment">//--如果cookie ar_stat_uv的值不为空</span>
<span class="token keyword">else</span><span class="token punctuation">{
   </span>
<span class="token comment">//--获取uv_id</span>
uv_id  <span class="token operator">=</span> uv_str<span class="token punctuation">;</span>
<span class="token punctuation">}</span>

<span class="token comment">//处理ss</span>
<span class="token comment">//--获取cookie ar_stat_ss</span>
<span class="token keyword">var</span> ss_str <span class="token operator">=</span> <span class="token function">ar_get_cookie</span><span class="token punctuation">(</span><span class="token string">"ar_stat_ss"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">var</span> ss_id <span class="token operator">=</span> <span class="token string">""</span><span class="token punctuation">;</span>  <span class="token comment">//sessin id</span>
<span class="token keyword">var</span> ss_no <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span>   <span class="token comment">//session有效期内访问页面的次数</span>

<span class="token comment">//--如果cookie中不存在ar_stat_ss 说明是一次新的会话</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>ss_str <span class="token operator">==</span> <span class="token string">""</span><span class="token punctuation">)</span><span class="token punctuation">{
   </span>
<span class="token comment">//--随机生成长度为10的session id</span>
ss_id <span class="token operator">=</span> <span class="token function">ar_get_random</span><span class="token punctuation">(</span><span class="token number">10</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//--session有效期内页面访问次数为0</span>
ss_no <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span>
<span class="token comment">//--拼接cookie ar_stat_ss 值 格式为 会话编号_会话期内访问次数_客户端时间_网站id</span>
value <span class="token operator">=</span> ss_id<span class="token operator">+</span><span class="token string">"_"</span><span class="token operator">+</span>ss_no<span class="token operator">+</span><span class="token string">"_"</span><span class="token operator">+</span><span class="token function">ar_get_stm</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//--设置cookie ar_stat_ss</span>
<span class="token function">ar_set_cookie</span><span class="token punctuation">(</span><span class="token string">"ar_stat_ss"</span><span class="token punctuation">,</span> value<span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token comment">//--如果cookie中存在ar_stat_ss</span>
<span class="token keyword">else</span> <span class="token punctuation">{
   </span>
<span class="token comment">//获取ss相关信息</span>
<span class="token keyword">var</span> items <span class="token operator">=</span> ss_str<span class="token punctuation">.</span><span class="token function">split</span><span class="token punctuation">(</span><span class="token string">"_"</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//--ss_id</span>
<span class="token keyword">var</span> cookie_ss_id  <span class="token operator">=</span> items<span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">;</span>
<span class="token comment">//--ss_no</span>
<span class="token keyword">var</span> cookie_ss_no  <span class="token operator">=</span> <span class="token function">parseInt</span><span class="token punctuation">(</span>items<span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//--ss_stm</span>
<span class="token keyword">var</span> cookie_ss_stm <span class="token operator">=</span> items<span class="token punctuation">[</span><span class="token number">2</span><span class="token punctuation">]</span><span class="token punctuation">;</span>

<span class="token comment">//如果当前时间-当前会话上一次访问页面的时间>30分钟,虽然cookie还存在,但是其实已经超时了!仍然需要重新生成cookie</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token function">ar_get_stm</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token operator">-</span> cookie_ss_stm <span class="token operator">></span> expire_time<span class="token punctuation">)</span> <span class="token punctuation">{
   </span>
<span class="token comment">//--重新生成会话id</span>
ss_id <span class="token operator">=</span> <span class="token function">ar_get_random</span><span class="token punctuation">(</span><span class="token number">10</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">//--设置会话中的页面访问次数为0</span>
ss_no <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token comment">//--如果会话没有超时</span>
<span class="token keyword">else</span><span class="token punctuation">{
   </span>
<span class="token comment">//--会话id不变</span>
ss_id <span class="token operator">=</span> cookie_ss_id<span class="token punctuation">;</span>
<span class="token comment">//--设置会话中的页面方位次数+1</span>
ss_no <span class="token operator">=</span> cookie_ss_no <span class="token operator">+</span> <span class="token number">1</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>

<span class="token comment">//--重新拼接cookie ar_stat_ss的值 </span>
value <span class="token operator">=</span> ss_id<span class="token operator">+</span><span class="token string">"_"</span><span class="token operator">+</span>ss_no<span class="token operator">+</span><span class="token string">"_"</span><span class="token operator">+</span><span class="token function">ar_get_stm</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token function">ar_set_cookie</span><span class="token punctuation">(</span><span class="token string">"ar_stat_ss"</span><span class="token punctuation">,</span> value<span class="token punctuation">,</span> <span class="token number">0</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>

<span class="token comment">//当前地址</span>
<span class="token keyword">var</span> url <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token constant">URL</span><span class="token punctuation">;</span>
url <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>url<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token comment">//当前资源名</span>
<span class="token keyword">var</span> urlname <span class="token operator">=</span> document<span class="token punctuation">.</span><span class="token constant">URL</span><span class="token punctuation">.</span><span class="token function">substring</span><span class="token punctuation">(</span>document<span class="token punctuation">.</span><span class="token constant">URL</span><span class="token punctuation">.</span><span class="token function">lastIndexOf</span><span class="token punctuation">(</span><span class="token string">"/"</span><span class="token punctuation">)</span><span class="token operator">+</span><span class="token number">1</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
urlname <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>urlname<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

    <span class="token comment">//返回导航到当前网页的超链接所在网页的URL</span>
<span class="token keyword">var</span> ref <span class="token operator">=</span> document<span class="token punctuation">.</span>referrer<span class="token punctuation">;</span>
ref <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>ref<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>


<span class="token comment">//网页标题</span>
<span class="token keyword">var</span> title <span class="token operator">=</span> document<span class="token punctuation">.</span>title<span class="token punctuation">;</span>
title <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>title<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token comment">//网页字符集</span>
<span class="token keyword">var</span> charset <span class="token operator">=</span> document<span class="token punctuation">.</span>charset<span class="token punctuation">;</span>
charset <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>charset<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token comment">//屏幕信息</span>
<span class="token keyword">var</span> screen <span class="token operator">=</span> <span class="token function">ar_get_screen</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
screen <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>screen<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token comment">//颜色信息</span>
<span class="token keyword">var</span> color <span class="token operator">=</span><span class="token function">ar_get_color</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
color <span class="token operator">=</span><span class="token function">ar_encode</span><span class="token punctuation">(</span><span class="token function">String</span><span class="token punctuation">(</span>color<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>

<span class="token comment">//语言信息</span>
<span class="token keyword">var</span> language <span class="token operator">=</span> <span class="token function">ar_get_language</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
language <span class="token operator">=</span> <span class="token function">ar_encode</span><span class="token punctuation">(</span></code></pre></p>

更多帖子推荐

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

Archiver|手机版|小黑屋|关于我们

Copyright © 2001-2025, Tencent Cloud.    Powered by Discuz! X3.5    京ICP备20013102号-30

违法和不良信息举报电话:86-13718795856 举报邮箱:hwtx2020@163.com

GMT+8, 2025-4-22 15:39 , Processed in 0.080745 second(s), 18 queries .