收集web用户行为及性能数据的方法及系统的制作方法

文档序号:7643136阅读:234来源:国知局
专利名称:收集web用户行为及性能数据的方法及系统的制作方法
技术领域
本发明涉及互联网技术领域,尤其涉及收集互联网上用户行为及 性能数据的技术。
背景技术
目前,互联网的web用户行为数据收集主要包括以下方式
(1) 记录web服务器访问日志,该方式能够收集到用户的IP 地址、访问的URL及相关参数、访问发生时间等数椐。现有的各种 流行的web服务器,如IIS、 apache等都支持此方法,但此方法只能 够收集本网站的访问数据,并且无法很好的区分由搜索引擎机器人
(web robot)或真正用户所产生的流量;
(2) 使用嵌入页面脚本,例如webtrends公司 (www.webtrends.com)的产品所提供功能。当用户访问嵌有脚本的
页面时,脚本记录用户当前所访问的页面URL,并将用户访问此页面 URL的数据发送到一个指定的数据收集站点。但使用此方法的脚本所 能够收集到用户的访问数据仅限于嵌入了此脚本的页面;
(3 )使用浏览器插件,例如Alexa公司(www.alexa.com )所提 供的工具条。当用户下载安装后,可以收集到用户浏览器的各种访问 web站点的行为,但这种方法需要用户下载安装插件,对于没有安装 插件的用户无效,所收集的用户数据样本极为有限。
以上各种方法仅关注于用户的使用行为,并没有收集用户的体验 数据(例如页面下载时间等),因此无法对相关应用系统的服务质量 进行有效的监控。
目前,互联网web用户使用体验性能数据收集基于以下技术实
现(1) 模拟用户行为的自动化测试程序,如Mercury公司(www.mercury.com )的商业过程监控器(Business Process Monitor)产品,其能够通过预先定义模仿真实用户访问web服务的脚本,并通 过自动执行脚本获取各项业务行为的性能数据。但这种方式所能够监 控的业务类型极为有限,且只能够模拟少数的用户,并不能获得广大 真实用户的实际性能数据;(2) 客户端插件,如Mercury公司(www.mercury.eom )的客 户监控器(Client Monitor)产品,可安装在指定用户的桌面系统,收 集用户访问特定应用的性能数据。由于需要安装特定程序,此方法所 能够监控的用户范围也极为有限。以上收集性能数据的方法只关注于用户使用特定web服务的响 应时间等性能指标,所关注的业务需要预先指定,并不能够记录用户 访问web应用的完整行为,无法支持用户行为分析的应用需求。发明内容因此,本发明的目的是提供一种使用浏览器嵌入脚本,同时收集 用户的web使用行为数据以及相关的服务质量性能数据,并高效地将 相关数据传送到统一的数据收集服务器进行后续处理的方法,从而将 用户行为数据与服务质量数据收集过程很好的统一 ,为相关数据的关 联分析提供较完整、准确的基础数据。根据本发明的一个方面,提供了一种使用浏览器嵌入脚本收集 web用户行为及性能数据的方法,包括以下步骤利用浏览器(Al) 访问被监控网站(A4)的页面,其中被监控网站(A4)的页面中包含 有指向监控脚本管理系统(A2)的监控脚本链接,被监控网站(A4) 构成监控域;浏览器(Al)经由监控脚本链接访问监控脚本管理系统 (A2),监控脚本管理系统根据监控策略生成并返回监控脚本,并且 測览器(Al)将所获得的监控脚本嵌入到当前页面中;监控脚本记录 对于被监控网站(A4)的页面的用户访问数据以生成监控记录集;以 及监控脚本将所生成的监控记录集发送给数据收集系统(A3)。根据本发明的另一方面,提供了一种使用浏览器嵌入脚本收集web用户行为及性能数据的系统,包括浏览器(A1),用于访问网 络内容;监控脚本管理系统(A2),用于根据监控策略生成监控脚本 并提供监控脚本的下栽;数据收集系统(A3),用于收集监控脚本上 传的数据;构成监控域的被监控网站(A4),其中被监控网站(A4) 的页面中包含有指向监控脚本管理系统(A2)的监控脚本链接。浏览 器(Al)在访问被监控网站(A4)的页面时经由该页面中所包含的监 控脚本链接访问监控脚本管理系统(A2)以获得监控脚本,并且所获 得的监控脚本被嵌入到当前页面中。监控脚本记录对于被监控网站 (A4)的用户访问数据以生成监控记录集,并将所生成的监控记录集 发送给数据收集系统(A3)。


以下参考附图来详细介绍本发明。附图1示出了根据本发明的采用浏览器嵌入脚本收集web用户行 为及性能数据的系统的方框图;附图2示出了根据本发明的采用浏览器嵌入脚本收集web用户行 为及性能数据的系统的工作流程图;附图3示出了监控脚本管理系统的方框图;附图4-7示出了监控脚本的多种监控流程。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图参 考优选实施例对本发明作进一步的详细描述。图1示出了根据本发明的采用浏览器嵌入脚本收集web用户行 为及性能数据的系统的方框图。如图1所示,根据本发明的系统包括 用户浏览器A1、监控脚本管理系统A2、数据收集系统A3、被监控网 站A4和间接被监控网站A5。其中,用户浏览器Al是用户访问网络 内容的终端软件,其可以是因特网上的浏览器,也可以是适用于无线互联网络的WAP浏览器。用户浏览器Al通过使用嵌入的监控脚本 可收集用户行为数据和性能数据。监控脚本管理系统A2负责根据规 则生成监控脚本,并提供监控脚本的下载,其中监控脚本可按照预定 义策略收集各类所需要的数据。数据收集系统A3负责收集监控脚本 上传的数据,以供后续处理用途。被监控网站A4是多个物理和/或逻 辑上相互独立的站点,它们一起形成监控域。被监控网站A4通过将 监控脚本的链接嵌入到本网站的页面中,使得浏览器在访问本网站页 面时能够获得监控脚本的下栽地址并能将相应的监控脚本装载到当 前页面中。被监控网站A4的页面中所嵌入的监控脚本链接(URL)可以 带有请求参数,作为监控脚本管理系统A2的监控策略配置参数。被 监控网站A4是提供用户所需各项服务功能的入口站点。间接被监控 网站A5是一种特殊的被监控网站,间接被监控网站A5的页面中不嵌 入监控脚本链接,即被监控网站A5不在监控域中,而是作为被监控 网站A4页面的一部分出现在被监控网站A4页面的内嵌框架 (IFRAME)中,并且其域名可以和被监控网站A4不同(外域被监 控网站)。当用户通过被监控网站A4页面访问间接被监控网站A5 时,针对间接被监控网站A5的用户行为和体验信息将和针对被监控 网站A4的用户行为和体验信息一起被监控脚本所记录,并发送到数 据收集系统A3。图2示出了根据本发明的采用浏览器嵌入脚本收集web用户行为 及性能数据的系统的工作流程。如图2所示,在步骤l)中,浏览器 Al访问监控脚本发布网站(即被监控网站)A4的页面。然后,在步 骤2)中,监控脚本发布网站A4返回所访问页面,其中页面内容包含 监控脚本的URL,此URL指向监控脚本管理系统A2,并且页面内容 中所包含的监控脚本链接(URL)可以带有请求参数,请求参数可以提 供监控策略的配置参数(如抽样率、监控数据提交策略等)。在步骤 3)中,浏览器经由监控脚本链接访问监控脚本管理系统A2,并且请 求参数被传递给监控脚本管理系统A2,监控脚本管理系统根据当前规 则和请求参数中所提供的监控策略的配置参数返回相应的监控脚本,然后浏览器将所返回的监控脚本嵌入到当前页面中。于是,就可以通 过嵌入当前页面中的监控脚本进行监控,例如监控用户行为及体验性 能,其中监控脚本通过挂接事件处理的钩子函数来监控页面内各种元素发生的各类事件。例如在图l所示的例子中,在步骤4)中,浏览 器A1下载页面的各相关内容。然后,在步骤5)中,当前页面中所嵌 入的监控脚本记录页面各内容的下载时间。在步骤6)中,用户点击 页面上的链接访问监控域的其他页面或间接被监控网站A5的页面, 并且监控脚本记录用户访问数据。最后,在步骤7)中,浏览器A1 监控脚本根据配置的监控策略向数据收集系统A3发送所记录的监控 数据。web用户行为及性能数据的数据量巨大,需要能够对数据收集策 略进行灵活的设置,以降低数据收集系统的性能压力。而且,所收集 的数据需能支持用户识别,从而将web访问行为与特定的用户个体相 关联。并且,需要能够判断多个web访问行为之间的相关性,从而推 断出用户在网站的会话行为及在此网站的停留时间。因此,在根据本发明的方案中,监控脚本由监控脚本管理系统 A2统一生成。根据需要,监控脚本管理系统A2所生成的监控脚本可 定义数据提交策略。数据提交策略例如包括批量提交数据,即收集 多个用户web行为数据并一次性提交到数据收集系统A3;抽样采集 用户web行为数据,其中抽样标准可以被设置为针对特定站点、针对 特定类型的网页内容或应用类别、固定比率随机选取等。上述策略可 以由管理员通过监控脚本管理系统A2进行设置,也可以由监控域A4 通过监控脚本URL的请求参数提供给监控脚本管理系统A2。此外,在根据本发明的方案中,监控脚本通过生成用户ID并将 其写入浏览器cookie的方式来对一个用户的多次会话(Session )进行 关联识别,其中用户ID被包含在发送到数据收集系统A3的监控记录 集中。例如,监控脚本可以使用随机字符串生成用户ID。而且,监控 脚本通过生成会话ID (SessionID)来标识一次用户访问的所有会话 行为, 一个用户在一个浏览器进程中的所有访问行为可以通过会话ID进行关联,从而获取多个访问行为之间的内在关系;其中会话ID被 包含在发送到数据收集系统A3的监控记录集中。通过记录各类事件 的来源、时间等信息来关联为用户行为和页面元素的性能数据。并且,监控脚本在用户关闭浏览器或离开被监控域时将捕捉此事 件,并将事件的相关信息(时间、用户跳转的非监控域网站的URL) 写入监控记录集,从而能够精确的获取用户在被监控网站的停留时间。用户在监控域的各个页面跳转时,监控记录集可以通过共享变量 持续传递;在用户离开监控域时,可按配置策略选择将监控记录集提 交到数据收集系统A3或者保存到用户cookie文件中以待今后批量提 交。监控脚本除监控页面本身响应时间外,还负责监控页面异常事 件、内嵌框架的状态变化,并且通过与框架内外域页面约定的状态栏 消息传递接口 ,可以监控框架内外部被监控网站页面的更详细信息(如 URL名称等),所有的信息写入监控记录集中在本发明中,监控记录集包含但不限于以下内容用户ID;会 话ID;每次会话的起始时间和终止时间;会话终止时用户跳转到的非 监控域网站的URL; -皮监控域内各页面的URL、下载时间、页面渲 染时间、用户^f亭留时间;外部-皮监控网站的URL、下栽时间、页面渲 染时间、用户停留时间;和页面出错信息(出错来源和描述)。图3示出了监控脚本管理系统A2的方框图。如图3所示,监控 脚本管理系统A2包括脚本库、策略配置模块和监控脚本生成模块, 并具有策略配置管理接口和浏览器接口 。其中管理员通过策略配置管 理接口配置监控策略(包括抽样率、监控记录提交策略等)。在本发 明中,监控脚本生成模块可以根据来自策略配置管理接口的管理员输 入和来自浏览器接口的请求参数动态地为请求脚本的浏览器生成监控 脚本,并配置脚本参数。以下以互联星空门户网站为例,具体说明本发明 >在需要监控的主页面的head头标签下包含以下特定的 javascript代码〈script language=,,javascript,,> Window.rt—ldstart=(new Date()).getTime(); </script><script language-"javascript" src="http:〃server7monitor.js"/>>部署监控脚本服务器。>修改monitor .js中第一行的服务器配置参数urlSubmit为实际的监控脚本服务器URL。 图4-7示出了监控脚本的各种监控流程。图4示出了页面初始化流程。如图4所示,在开始装载页面时,监 控脚本首先记录页面下载时间,然后进行页面装载。在页面装栽完毕 时,监控脚本生成用户ID或从cookie中获得用户ID,并生成会话ID 或从共享变量获得会话ID。接下来,监控脚本为页面中各类元素装载 事件处理的钩子函数。然后,等待事件并定期检查状态栏的共享变量。图5示出了监控页面跳转处理的流程。如图5所示,监控脚本在监 控到跳转事件时记录下监控数据并将监控记录集和会话ID设置为共 享变量传递到所跳转到的页面,然后所跳转到的页面执行上述页面初 始化流程。图6示出了对内嵌框架外域页面监控流程。如图6所示,监控脚本 在监控到外域页面的状态变化事件时记录相关信息,然后从状态栏共 享变量中获取更详细信息,并继续等待下一事件。图7示出了跳出监控域的处理流程。如图7所示,监控脚本在监控 到跳出监控域时记录相关信息,并且根据配置策略而将监控记录集提 交给数据采集系统或者将其保存在cookie中待以后一起提交,最后返 回页面并且浏览器跳转到外域页面。本发明的技术方案将用户行为数据与服务质量数据收集过程很好 的统一,为相关数据的关联分析提供较完整、准确的基础数据;并且 能够准确收集由真实用户产生的行为及体验数据。而且,根据本发明 的数据收集过程可控性、可管理性强,数据收集策略及收集点集中控 制,有利于数据的集中分析,而且被监控网站开发量小,易于推广。此外,本发明的方案适用范围广,无需用户安装额外的程序。在本发 明的方案中,通过监控页面响应时间和异常事件,可以发现、定位问 题来源。虽然以上结合优选实施例详细介绍了本发明,但是本发明并不局 限于上述实施例的具体介绍。本发明可进一步更新,或者对本发明所 公开的特征加以新的组合,包括任何相关的权利要求、摘要和附图,
权利要求
1. 一种使用浏览器嵌入脚本收集web用户行为及性能数据的方法,包括以下步骤利用浏览器(A1)访问被监控网站(A4)的页面,其中所述被监控网站(A4)的页面中包含有指向监控脚本管理系统(A2)的监控脚本链接,所述被监控网站(A4)构成监控域;所述浏览器(A1)经由所述监控脚本链接访问所述监控脚本管理系统(A2),所述监控脚本管理系统根据监控策略生成并返回监控脚本,并且所述浏览器(A1)将所获得的监控脚本嵌入到当前页面中;所述监控脚本记录对于所述被监控网站(A4)的页面的用户访问数据以生成监控记录集;以及所述监控脚本将所生成的监控记录集发送给数据收集系统(A3)。
2. 根据权利要求1的方法,其中所述监控脚本链接具有请求参 数,用于向所述监控脚本管理系统提供监控策略配置参数,并且所述 请求参数在浏览器访问监控脚本管理系统(A2)时被传递给所述监控 脚本管理系统(A2)。
3. 根据权利要求1或2的方法,其中所述监控脚本生成用户ID 并将所述用户ID写入浏览器cookie中,以便对一个用户的多次会话 进行关联,并且所述用户ID被包含在所述监控记录集中。
4. 根据权利要求1或2的方法,其中所述监控脚本生成会话ID 以便对用户在一个浏览器进程中的所有访问行为进行关联,并且所述 会话ID被包含在所述监控记录集中。
5. 根据权利要求1或2的方法,其中用户可通过所述被监控网 站(A4)的页面访问间接被监控网站(A5)的页面,其中所述间接被监控网站(A5)的页面不包含监控脚本链接,而包含在所述被监控网 站(A4)的页面的内嵌框架中,并且所述监控脚本将对于所述间接被 监控网站(A5)的用户访问数据记录到所述监控记录集中。
6. 根据权利要求1或2的方法,其中当在监控域内的页面之间 跳转时,所述监控脚本将所述监控记录集设置为共享变量进行传递。
7. 根据权利要求1或2的方法,其中当关闭浏览器或离开监控 域时,监控脚本根据配置策略将所述监控记录集提交给所述数据收集 系统(A3 )或将其保持在用户cookie文件中。
8. 根据权利要求1或2的方法,其中所述监控脚本记录用户访 问数据以生成监控记录集的步骤包括监控脚本记录页面下载时间;在页面装栽完毕时生成用户ID或从浏览器的cookie获取用户 ID,生成会话ID或从所述共享变量获取会话ID;为页面中各类元素装载事件处理的钩子函数;以及 等待事件,并定时检查状态栏的共享变量。
9. 根据权利要求8的方法,其中所述监控脚本记录用户访问数 据以生成监控记录集的步骤还包括当在监控域内的页面之间跳转时,监控脚本记录下监控数据,并 将监控记录集和会话ID设置为共享变量以传递到所跳转到的页面。
10. 根据权利要求8或9的方法,其中所述监控脚本记录用户访 问数据以生成监控记录集的步骤还包括当关闭浏览器或离开监控域时,监控脚本记录相关信息,并根据 配置策略将所述监控记录集提交给所述数据收集系统(A3)或将其保 持在用户cookie文件中。
11. 根据权利要求8或9的方法,其中所述监控脚本记录用户访 问数据以生成监控记录集的步骤还包括当外域页面的状态变化时,监控脚本记录相关信息,并从状态共 享变量中获取更详细信息,然后等待下一事件。
12. —种使用浏览器嵌入脚本收集web用户行为及性能数据的系 统,包括浏览器(Al),用于访问网络内容;监控脚本管理系统(A2),用于根据监控策略生成监控脚本并提 供所述监控脚本的下载;数据收集系统(A3),用于收集监控脚本上传的数据;构成监控域的被监控网站(A4),其中所述被监控网站(A4) 的页面中包含有指向所述监控脚本管理系统(A2)的监控脚本链接;其中,浏览器(Al)在访问被监控网站(A4)的页面时经由该 页面中所包含的监控脚本链接访问所述监控脚本管理系统(A2)以获 得监控脚本,并且所获得的监控脚本被嵌入到当前页面中;所述监控脚本记录对于所述被监控网站(A4 )的用户访问数据以 生成监控记录集,并将所生成的监控记录集发送给数据收集系统 (A3)。
13. 根据权利要求12的系统,其中所述监控脚本链接具有请求 参数,用于向所述监控脚本管理系统(A2)提供监控策略配置参数。
14. 根据权利要求12或13的系统,其中所述监控脚本生成用户 ID并将所述用户ID写入浏览器cookie中,以便对一个用户的多次会 话进行关联,并且所述用户ID被包含在所述监控记录集中。
15. 根据权利要求12或13的系统,其中所述监控脚本生成会话ID以便对用户在一个浏览器进程中的所有访问行为进行关联,并且所 述会话ID被包含在所述监控记录集中。
16. 根据权利要求12或13的系统,还包括 间接被监控网站(A5),其中所述间接被监控网站(A5)的页面中不包含监控脚本链接,并且出现在所述被监控网站(A4)的页面 的内嵌框架中;其中当经由所述被监控网站(A4 )的页面访问所述间接被监控网 站(A5)的页面时,所述监控脚本将对于所述间接被监控网站(A5) 的用户访问数据记录到所述监控记录集中。
17. 根据权利要求12的系统,其中当在监控域内的页面之间跳 转时,所述监控脚本将所述监控记录集设置为共享变量进行传递。
18. 根据权利要求12的系统,其中当关闭浏览器或离开监控域 时,监控脚本根据配置策略将所述监控记录集提交给所述数据收集系 统(A3 )或将其保持在用户cookie文件中。
19. 根据权利要求12的系统,其中所述监控脚本记录用户访问 数据以生成监控记录集包括监控脚本记录页面下载时间;在页面装栽完毕时生成用户ID或从浏览器的cookie获取用户ID,生成会话ID或从所述共享变量获取会话ID;为页面中各类元素装栽事件处理的钩子函数;以及等待事件,并定时检查状态栏的共享变量。
20. 根据权利要求19的系统,其中所述监控脚本记录用户访问 数据以生成监控记录集还包括当在监控域内的页面之间跳转时,监控脚本记录下监控数据,并将监控记录集和会话ID设置为共享变量以传递到所跳转到的页面。
21. 根据权利要求19或20的系统,其中所述监控脚本记录用户 访问数据以生成监控记录集还包括当关闭浏览器或离开监控域时,监控脚本记录相关信息,并根据 配置策略将所述监控记录集提交给所述数据收集系统(A3)或将其保 持在用户cookie文件中。
22. 根据权利要求19或20的系统,其中所述监控脚本记录用户 访问数据以生成监控记录集还包括当外域页面的状态变化时,监控脚本记录相关信息,并从状态共 享变量中获取更详细信息,然后等待下一事件。
23. 根据权利要求12的系统,其中所述监控脚本管理系统(A2)包括策略定制单元,用于确定监控策略; 脚本动态生成单元,用于根据监控策略生成监控脚本。
全文摘要
本发明提供了一种使用浏览器嵌入脚本,同时收集用户的web使用行为数据以及相关的服务质量性能数据,并高效地将相关数据传送到统一的数据收集服务器进行后续处理的方法,将用户行为数据与服务质量数据收集过程很好的统一,为相关数据的关联分析提供较完整、准确的基础数据。
文档编号H04L12/24GK101222349SQ200710000559
公开日2008年7月16日 申请日期2007年1月12日 优先权日2007年1月12日
发明者张京晖, 雄 徐, 衡 杨, 刚 王, 王爱宝, 蔡坚铮, 袁立宇, 陈剑波 申请人:中国电信股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1