《网络访问日志处理方法及装置.pdf》由会员分享,可在线阅读,更多相关《网络访问日志处理方法及装置.pdf(13页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 104283723 A (43)申请公布日 2015.01.14 CN 104283723 A (21)申请号 201410602350.5 (22)申请日 2014.10.31 H04L 12/24(2006.01) (71)申请人 北京蓝汛通信技术有限责任公司 地址 100015 北京市朝阳区酒仙桥北路 7 号 电通时代广场三号楼 A 区 (72)发明人 杨川 秦刚 (74)专利代理机构 北京康信知识产权代理有限 责任公司 11240 代理人 李志刚 吴贵明 (54) 发明名称 网络访问日志处理方法及装置 (57) 摘要 本发明公开了一种网络访问日志处理方法及 装。
2、置, 该网络访问日志处理方法包括 : 获取第一 网络访问日志, 其中, 第一网络访问日志是执行网 络访问产生的原始日志, 第一网络访问日志包括 多个字段 ; 从预设字典库中分别查找与多个字段 对应的标识, 其中, 预设字典库中存储有字段和与 字段对应的标识 ; 将第一网络访问日志中的多个 字段替换为对应的标识, 得到第二网络访问日志 ; 以及传输第二网络访问日志。 通过本发明, 解决了 网络访问日志传输效率低的问题, 进一步达到了 提高网络访问日志传输效率的效果。 (51)Int.Cl. 权利要求书 2 页 说明书 8 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申。
3、请 权利要求书2页 说明书8页 附图2页 (10)申请公布号 CN 104283723 A CN 104283723 A 1/2 页 2 1. 一种网络访问日志处理方法, 其特征在于, 包括 : 获取第一网络访问日志, 其中, 所述第一网络访问日志是执行网络访问产生的原始日 志, 所述第一网络访问日志包括多个字段 ; 从预设字典库中分别查找与所述多个字段对应的标识, 其中, 所述预设字典库中存储 有字段和与字段对应的标识 ; 将所述第一网络访问日志中的所述多个字段替换为对应的标识, 得到第二网络访问日 志 ; 以及 传输所述第二网络访问日志。 2. 根据权利要求 1 所述的网络访问日志处理方法。
4、, 其特征在于, 在从预设字典库中分 别查找与所述多个字段对应的标识之前, 所述方法包括 : 获取多条网络访问日志 ; 计算所述多条网络访问日志中字段内容相同的第一字段的个数, 其中, 所述第一字段 为所述多个字段中任意一个字段或是所述多个字段的组合或是所述多个字段中任意一个 字段的多个子字段中的任意一个子字段 ; 判断所述第一字段的个数是否大于预设值 ; 创建预设字典库 ; 以及 在所述第一字段的个数大于预设值时, 将所述第一字段和对应的标识存储于所述预设 字典库中。 3. 根据权利要求 2 所述的网络访问日志处理方法, 其特征在于, 在所述第一字段的个 数大于预设值时, 在将所述第一字段和。
5、对应的标识存储于所述预设字典库中之前, 所述方 法包括 : 判断所述第一字段是否存在于所述预设字典库中 ; 以及 在所述第一字段不存在于所述预设字典库中时, 生成所述第一字段对应的标识。 4. 根据权利要求 3 所述的网络访问日志处理方法, 其特征在于, 判断所述第一字段是 否存在于所述预设字典库中包括 : 将所述第一字段进行哈希运算, 得到所述第一字段的哈希值 ; 判断所述第一字段的哈希值是否存在于所述预设字典库中 ; 在所述第一字段的哈希值不存在于所述预设字典库中时, 确定所述第一字段不存在于 所述预设字典库中, 并将所述第一字段的哈希值存储于所述预设字典库中 ; 以及 在所述第一字段的哈。
6、希值存在于所述预设字典库中时, 确定所述第一字段存在于所述 预设字典库中。 5. 根据权利要求 1 所述的网络访问日志处理方法, 其特征在于, 所述预设字典库为多 个, 所述多个预设字典库与所述多个字段一一对应, 从预设字典库中分别查找与所述多个 字段对应的标识包括 : 分别从所述多个字段对应的所述字典库中查找对应的标识。 6. 根据权利要求 1 所述的网络访问日志处理方法, 其特征在于, 发送装置传输所述第 一网络访问日志至接收装置, 在所述发送装置和所述接收装置均存储有所述预设字典库, 在所述发送装置传输所述第一网络访问日志至所述接收装置之后, 所述方法包括 : 判断接收装置存储的预设字典。
7、库是否有更新 ; 以及 如果判断出所述接收装置存储的预设字典库有更新, 则根据所述接收装置的预设字典 权 利 要 求 书 CN 104283723 A 2 2/2 页 3 库更新所述发送装置的预设字典库。 7. 一种网络访问日志处理装置, 其特征在于, 包括 : 第一获取单元, 用于获取第一网络访问日志, 其中, 所述第一网络访问日志是执行网络 访问产生的原始日志, 所述第一网络访问日志包括多个字段 ; 查找单元, 用于从预设字典库中分别查找与所述多个字段对应的标识, 其中, 所述预设 字典库中存储有字段和与字段对应的标识 ; 替换单元, 用于将所述第一网络访问日志中的所述多个字段替换为对应的。
8、标识, 得到 第二网络访问日志 ; 以及 传输单元, 用于传输所述第二网络访问日志。 8. 根据权利要求 7 所述的网络访问日志处理装置, 其特征在于, 所述装置还包括 : 第二获取单元, 用于获取多条网络访问日志 ; 计算单元, 用于计算所述多条网络访问日志中字段内容相同的第一字段的个数, 其中, 所述第一字段为所述多个字段中任意一个字段或是所述多个字段的组合或是所述多个字 段中任意一个字段的多个子字段中的任意一个子字段 ; 第一判断单元, 用于判断所述第一字段的个数是否大于预设值 ; 创建单元, 用于创建预设字典库 ; 以及 存储单元, 用于在所述第一字段的个数大于预设值时, 将所述第一字。
9、段和对应的标识 存储于所述预设字典库中。 9. 根据权利要求 8 所述的网络访问日志处理装置, 其特征在于, 所述装置还包括 : 第二判断单元, 用于判断所述第一字段是否存在于所述预设字典库中 ; 以及 生成单元, 用于在所述第一字段不存在于所述预设字典库中时, 生成所述第一字段对 应的标识。 10. 根据权利要求 9 所述的网络访问日志处理装置, 其特征在于, 所述第二判断单元包 括 : 运算模块, 用于将所述第一字段进行哈希运算, 得到所述第一字段的哈希值 ; 判断模块, 用于判断所述第一字段的哈希值是否存在于所述预设字典库中 ; 以及 确定模块, 用于在所述第一字段的哈希值不存在于所述预。
10、设字典库中时, 确定所述第 一字段不存在于所述预设字典库中, 并将所述第一字段的哈希值存储于所述预设字典库 中, 在所述第一字段的哈希值存在于所述预设字典库中时, 确定所述第一字段存在于所述 预设字典库中。 11. 根据权利要求 7 所述的网络访问日志处理装置, 其特征在于, 发送装置传输所述第 一网络访问日志至接收装置, 在所述发送装置和所述接收装置均存储有所述预设字典库, 所述装置还包括 : 第三判断单元, 用于判断接收装置存储的预设字典库是否有更新 ; 以及 更新单元, 用于在判断出所述接收装置存储的预设字典库有更新时, 则根据所述接收 装置的预设字典库更新所述发送装置的预设字典库。 权。
11、 利 要 求 书 CN 104283723 A 3 1/8 页 4 网络访问日志处理方法及装置 技术领域 0001 本发明涉及互联网领域, 具体而言, 涉及一种网络访问日志处理方法及装置。 背景技术 0002 互联网产品越来越注重用户的交互与体验, 例如, Web2.0, 是一个由用户主导而 生成内容的互联网产品模式, 用户是网站内容的创建者, 同时也是使用者。目前 Web2.0 具 有代表性的服务有电商网络、 资讯类、 社区化网络 (SNS, 如人人网 )、 微博、 微信等。由于 Web2.0 注重用户交互, 、 用户客户端会产生数量庞大的日志数据, 例如一条微博发表后, 通 过不断转发、 。
12、评论后, 有可能产生 GB 级别的日志数据。 0003 现有的技术方案日志传输架构如图 1 所示, 日志数据从数据产生层传输到数据处 理层的传输方式如下 : WEB 服务器产生用户访问日志后, 对其进行 GZ 压缩后, 按照传输协议 ( 比如 FTP、 HTTP 等 ) 传输给数据中转服务器 ; 中转服务器接收到 GZ 包文件后, 对这些文件 做汇总后(比如把相同设备上的多个文件做合并后上传, 如devicename相同的多个日志文 件合并为一个GZ文件)上传到数据处理层或某种公布式存储或计算集群中进行统计分析。 0004 现有技术存在如下问题 : 一是 WEB 服务端产生的日志量非常庞大, 。
13、给传输带来了 很高的带宽成本 ; 二是日志量大造成传输十分耗时, 使得日志收集的时效性低。 0005 针对相关技术中网络访问日志传输效率低的问题, 目前尚未提出有效的解决方 案。 发明内容 0006 本发明的主要目的在于提供一种网络访问日志处理方法及装置, 以解决网络访问 日志传输效率低的问题。 0007 为了实现上述目的, 根据本发明的一个方面, 提供了一种网络访问日志处理方法。 0008 根据本发明的网络访问日志处理方法包括 : 获取第一网络访问日志, 其中, 第一网 络访问日志是执行网络访问产生的原始日志, 第一网络访问日志包括多个字段 ; 从预设字 典库中分别查找与多个字段对应的标识,。
14、 其中, 预设字典库中存储有字段和与字段对应的 标识 ; 将第一网络访问日志中的多个字段替换为对应的标识, 得到第二网络访问日志 ; 以 及传输第二网络访问日志。 0009 进一步地, 在从预设字典库中分别查找与多个字段对应的标识之前, 该方法包括 : 获取多条网络访问日志 ; 计算多条网络访问日志中字段内容相同的第一字段的个数, 其中, 第一字段为多个字段中任意一个字段或是多个字段的组合或是多个字段中任意一个字段 的多个子字段中的任意一个子字段 ; 判断第一字段的个数是否大于预设值 ; 创建预设字典 库 ; 以及在第一字段的个数大于预设值时, 将第一字段和对应的标识存储于预设字典库中。 00。
15、10 进一步地, 在第一字段的个数大于预设值时, 在将第一字段和对应的标识存储于 预设字典库中之前, 该方法包括 : 判断第一字段是否存在于预设字典库中 ; 以及在第一字 段不存在于预设字典库中时, 生成第一字段对应的标识。 说 明 书 CN 104283723 A 4 2/8 页 5 0011 进一步地, 判断第一字段是否存在于预设字典库中包括 : 将第一字段进行哈希运 算, 得到第一字段的哈希值 ; 判断第一字段的哈希值是否存在于预设字典库中 ; 在第一字 段的哈希值不存在于预设字典库中时, 确定第一字段不存在于预设字典库中, 并将第一字 段的哈希值存储于预设字典库中 ; 以及在第一字段的。
16、哈希值存在于预设字典库中时, 确定 第一字段存在于预设字典库中。 0012 进一步地, 预设字典库为多个, 多个预设字典库与多个字段一一对应, 从预设字典 库中分别查找与多个字段对应的标识包括 : 分别从多个字段对应的字典库中查找对应的标 识。 0013 进一步地, 发送装置传输第一网络访问日志至接收装置, 在发送装置和接收装置 均存储有预设字典库, 在发送装置传输第一网络访问日志至接收装置之后, 方法包括 : 判断 接收装置存储的预设字典库是否有更新 ; 以及如果判断出接收装置存储的预设字典库有更 新, 则根据接收装置的预设字典库更新发送装置的预设字典库。 0014 为了实现上述目的, 根据。
17、本发明的另一方面, 提供了一种网络访问日志处理装置。 该网络访问日志处理装置包括 : 第一获取单元, 用于获取第一网络访问日志, 其中, 第一网 络访问日志是执行网络访问产生的原始日志, 第一网络访问日志包括多个字段 ; 查找单元, 用于从预设字典库中分别查找与多个字段对应的标识, 其中, 预设字典库中存储有字段和 与字段对应的标识 ; 替换单元, 用于将第一网络访问日志中的多个字段替换为对应的标识, 得到第二网络访问日志 ; 以及传输单元, 用于传输第二网络访问日志。 0015 进一步地, 该装置还包括 : 第二获取单元, 用于获取多条网络访问日志 ; 计算单 元, 用于计算多条网络访问日志。
18、中字段内容相同的第一字段的个数, 其中, 第一字段为多个 字段中任意一个字段或是多个字段的组合或是多个字段中任意一个字段的多个子字段中 的任意一个子字段 ; 第一判断单元, 用于判断第一字段的个数是否大于预设值 ; 创建单元, 用于创建预设字典库 ; 以及存储单元, 用于在第一字段的个数大于预设值时, 将第一字段和 对应的标识存储于预设字典库中。 0016 进一步地, 该装置还包括 : 第二判断单元, 用于判断第一字段是否存在于预设字典 库中 ; 以及生成单元, 用于在第一字段不存在于预设字典库中时, 生成第一字段对应的标 识。 0017 进一步地, 第二判断单元包括 : 运算模块, 用于将第。
19、一字段进行哈希运算, 得到第 一字段的哈希值 ; 判断模块, 用于判断第一字段的哈希值是否存在于预设字典库中 ; 以及 确定模块, 用于在第一字段的哈希值不存在于预设字典库中时, 确定第一字段不存在于预 设字典库中, 并将第一字段的哈希值存储于预设字典库中, 在第一字段的哈希值存在于预 设字典库中时, 确定第一字段存在于预设字典库中。 0018 进一步地, 发送装置传输第一网络访问日志至接收装置, 在发送装置和接收装置 均存储有预设字典库, 该装置还包括 : 第三判断单元, 用于判断接收装置存储的预设字典库 是否有更新 ; 以及更新单元, 用于在判断出接收装置存储的预设字典库有更新时, 则根据。
20、接 收装置的预设字典库更新发送装置的预设字典库。 0019 通过本发明, 采用预设字典库中的标识替换对应的网络访问日志的字段后在进行 传输, 解决了网络访问日志传输效率低的问题, 进而达到了提高网络访问日志传输效率的 效果。 说 明 书 CN 104283723 A 5 3/8 页 6 附图说明 0020 构成本申请的一部分的附图用来提供对本发明的进一步理解, 本发明的示意性实 施例及其说明用于解释本发明, 并不构成对本发明的不当限定。在附图中 : 0021 图 1 是根据相关技术的日志传输架构图 ; 0022 图 2 是根据本发明实施例的网络访问日志处理方法的流程图 ; 0023 图 3 是。
21、根据本发明实施例的访问志传输流程图 ; 以及 0024 图 4 是根据本发明实施例的网络访问日志处理装置示意图。 具体实施方式 0025 需要说明的是, 在不冲突的情况下, 本申请中的实施例及实施例中的特征可以相 互组合。下面将参考附图并结合实施例来详细说明本发明。 0026 为了使本技术领域的人员更好地理解本发明方案, 下面将结合本发明实施例中的 附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例仅仅是 本发明一部分的实施例, 而不是全部的实施例。基于本发明中的实施例, 本领域普通技术 人员在没有做出创造性劳动前提下所获得的所有其他实施例, 都应当属于本发明保。
22、护的范 围。 0027 需要说明的是, 本发明的说明书和权利要求书及上述附图中的术语 “第一” 、“第 二” 等是用于区别类似的对象, 而不必用于描述特定的顺序或先后次序。 应该理解这样使用 的数据在适当情况下可以互换, 以便这里描述的本发明的实施例。此外, 术语 “包括” 和 “具 有” 以及他们的任何变形, 意图在于覆盖不排他的包含, 例如, 包含了多个元器件的系统、 产 品或设备不必限于清楚地列出的那些元器件, 而是可包括没有清楚地列出的或对于这些产 品或设备固有的其它元器件。 0028 根据本发明实施例, 提供了一种网络访问日志处理方法, 图 2 是根据本发明实施 例的网络访问日志处理。
23、方法流程图。 0029 如图 2 所示, 该方法包括如下的步骤 S102 至步骤 S108 : 0030 步骤 S102 : 获取第一网络访问日志, 其中, 第一网络访问日志是执行网络访问产 生的原始日志, 第一网络访问日志包括多个字段。 0031 第一网络访问日志是用户访问某网页时产生的访问日志, 即原始日志, 如用户在 新浪微博上转发一条微博, 相应地, 在用户所访问的网站的终端服务器中就产生一条访问 日志。当网站的用户数量很多时, 产生的访问日志数量相应的也很多。获取第一网络访问 日志可以是获取一条第一网络访问日志, 也可是获取多条第一网络访问日志。网络访问日 志通常包括多个字段, 如 。
24、IP 字段、 统一资源定位符 (URL) 字段、 用户代理 (UserAgent) 字段 等, 具体地, 一条访问日志的格式可以如下 : 0032 1386562882.666 14 XXX.XXX.XXX.XXX TCP_MEM_HIT/200 440 GET http:/www.XXXXX.com/images/xxxxx.gif-NONE/-image/gif“http:/www. XXXXX.com/drivers/440_176147XXX.htm“Mozilla/5.0(Windows NT 6.1 ; WOW64) AppleWebKit/537.1(KHTML,like Gec。
25、ko)Chrome/21.0.1180.89Safari/537.1“。 0033 其中,“XXX.XXX.XXX.XXX” 为 IP,“http:/www.XXXXX.com/images/xxxxx.gif” 为 说 明 书 CN 104283723 A 6 4/8 页 7 请求统一资源定位符 (RequestUrl), “http:/www.XXXXX.com/drivers/440_176147XXX. htm“ 为访问来源 (referer) 字段, “Mozilla/5.0(Windows NT 6.1 ; WOW64) AppleWebKit/537.1(KHTML,like G。
26、ecko)Chrome/21.0.1180.89Safari/537.1“ 为用户代理 (UserAgent)。 0034 原始日志可以由一个终端服务器产生, 也可以由多个终端服务器产生。为了提高 访问日志处理的效率, 将多个终端服务器产生的原始日志汇总压缩后发送给接收端, 该接 收端可以是数据处理层、 公布式存储或是计算集群。 0035 步骤 S104 : 从预设字典库中分别查找与多个字段对应的标识, 其中, 预设字典库 中存储有字段和与字段对应的标识。 0036 预设字典库采用键值 (KeyValue) 的存储方式, 即包含一个标识和属性值, 在预设 字典库中预先存储了访问日志的字段和该字。
27、段对应的标识, 该字段对应的标识用于唯一的 表示该字段。 如上述日志的请求统一资源定位符字段所示, 具有较长的字符串, 所占的内存 量较大, 传输量大, 如若用一个较短的字符串来唯一的替换上述较长的字符串进行传输, 相 应的就可以减少日志传输量, 提高传输效率, 当一次传输较多条日志时, 通过上述唯一标识 替换的方法将多条日志中的字段用对应的标识进行替换可以显著降低日志的传输量。 0037 具体地, 可以根据访问日志的不同字段的具体情况来生成对应的标识。在从预设 字典库中分别查找与多个字段对应的标识之前, 该方法包括 : 获取多条网络访问日志 ; 计 算多条网络访问日志中字段内容相同的第一字段。
28、的个数, 其中, 第一字段为多个字段中任 意一个字段或是多个字段的组合或是多个字段中任意一个字段的多个子字段中的任意一 个子字段 ; 判断第一字段的个数是否大于预设值 ; 创建预设字典库 ; 以及在第一字段的个 数大于预设值时, 将第一字段和对应的标识存储于预设字典库中。 0038 为了提高预设字典库中存储的字段和对应的标识的代表性, 在生成预设字典库过 程中, 首先获取多条的网络访问日志, 多条网络访问日志用于统计字段内容相同的第一字 段的个数, 该第一字段根据访问日志的不同字段的特点分为多种不同的情况。 0039 若访问日志的某个字段在多条访问日志中出现的概率较高时, 则将该字段作为第 一。
29、字段, 例如, 访问日志中的 URL 字段, 由于在多条访问日志中会经常出现相同内容的 URL, 因此可以将该 URL 对应的内容和对应的标识存入预设字典库中。 0040 若访问日志中的多个字段的组合在多条访问日志中同时出现的概率较高时, 可以 将该多个字段的组合作为第一字段, 例如, IP 和 UserAgent 这两个字段对于同一个用户它 们的内容往往是相同的, 因此可以生成一个标识对应于 IP 和 UserAgent 这两个字段的组 合, 并将该标识和对应的字段组合存入预设字典库。 0041 若访问日志中某个字段还包含多个子字段时, 可以将多个子字段中的每一个 作为第一字段, 通过对每个。
30、子字段生成对应的标识, 并将每个子字段和对应的标识存储 于预设字典库中。例如上述 UserAgent 字段, “Mozilla/5.0(Windows NT 6.1 ; WOW64) AppleWebKit/537.1(KHTML,like Gecko)Chrome/21.0.1180.89 Safari/537.1“, 将 “Mozilla/5.0(Windows NT 6.1 ; WOW64)” 对应于 ID1,“AppleWebKit/537.1” 对应于 ID2, “(KHTML,like Gecko)” 对应于 ID3,“Mozilla/5.0(Windows NT 6.1 ; WO。
31、W64)” 对应于 ID4, 则上述 UserAgent 字段可以表示为 “ID1+ID2I+D3+ID4” 。 0042 计算获取的多条访问日志中字段内容相同的第一字段的个数后, 将得到的字段内 说 明 书 CN 104283723 A 7 5/8 页 8 容相同的第一字段的个数与预设值进行比较, 只有大于预设值时才将该字段和对应的标识 存储于预设字典中, 例如, 设定预设值为20, 在获取的3000条网络访问日志中, IP地址内容 为 “101.102.000.000” 的 IP 个数为 30, 则该 IP 个数大于预设值, 生成该 IP 字段对应的标 识 ID5, 则将 “101.102。
32、.000.000” 和对应标识 ID5 存储于预设字典库。 0043 字段对应标识的生成方法有很多, 可以按照预定的规则生成指定字段对应标识, 例如, 取字典库中存储的 ID 的最大值加 1 后作为该指定字段对应的标识。 0044 优选地, 为了避免相同的访问日志的字段重复存储于预设字典库中, 在第一字段 的个数大于预设值时, 在将第一字段和对应的标识存储于预设字典库中之前, 该方法包括 : 判断第一字段是否存在于预设字典库中 ; 以及在第一字段不存在于预设字典库中时, 生成 第一字段对应的标识。 0045 通过预先查找预设字典库中是否存在该字段来确定是否需要将该字段和对应标 识存储于预设字典。
33、库中, 可以有效避免预设字典库中数据存储的冗余, 也可以提高从预设 字典库中查找指定字段对应标识的效率。 0046 优选地, 为了提高判断第一字段是否存在于预设字典库的效率, 判断第一字段是 否存在于预设字典库中包括 : 将第一字段进行哈希运算, 得到第一字段的哈希值 ; 判断第 一字段的哈希值是否存在于预设字典库中 ; 在第一字段的哈希值不存在于预设字典库中 时, 确定第一字段不存在于预设字典库中, 并将第一字段的哈希值存储于预设字典库中 ; 以 及在第一字段的哈希值存在于预设字典库中时, 确定第一字段存在于预设字典库中。 0047 哈希 (Hash) 算法, 即散列算法, 可以将任意长度的。
34、输入经过哈希运算得到固定长 度的输出, 且不同的输入对应一个唯一的输出。 由于访问日志的字段都较长, 如果将访问日 志的多个字段直接与预设字典库中预先存储的字段分别进行比较将十分耗时, 因此, 为了 提升比较的效率, 可以先将访问日志的第一字段首先进行哈希运算得到哈希值, 该哈希值 可以设定为一个长度较短的字符串, 通过将该哈希值与预设字典库中预先存储的字段的哈 希值进行比较, 可以提高判断第一字段是否存在于预设字典库的效率。 0048 步骤 S106 : 将第一网络访问日志中的多个字段替换为对应的标识, 得到第二网络 访问日志。 0049 在从预设字典库中查找到第一网络访问日志中的多个字段对。
35、应的标识后, 用对应 的标识替换对应的字段。如果访问日志的多个字段都在预设字典库中存在对应标识, 则用 对应标识替换访问日志的所有的字段, 如果访问日志的多个字段只有部分字段在预设字典 库中存在对应的标识, 则用对应标识替换访问日志的部分字段, 因此, 得到的第二网络访问 日志可以是全部字段都被对应的标识所替换, 也可以是部分字段被对应的标识所替换。 0050 步骤 S108 : 传输第二网络访问日志。 0051 上述用标识替换后得到的第二网络访问日志相比于没有进行替换的第一网络访 问日志, 数据量已经大大减少, 相应的传输时间减少, 传输效率提高。同时传输的访问日志 条数越多传输效率提高的越。
36、显著。 0052 优选地, 为了提高查找访问日志的字段对应的标识的效率, 预设字典库为多个, 多 个预设字典库与多个字段一一对应, 从预设字典库中分别查找与多个字段对应的标识包 括 : 分别从多个字段对应的字典库中查找对应的标识。 0053 访问日志的每个字段对应于一个字典库, 在查找指定字段对应的标识时, 可以仅 说 明 书 CN 104283723 A 8 6/8 页 9 查找该字段对应的字典库, 相比于将所有字段和对应标识都存储于一个预设字典库中, 在 查找指定字段对应的标识时需要遍历包含全部字段的预设字典库, 大大减少了查找的时 间, 提高了查找的效率。 0054 优选地, 为了及时更。
37、新接收装置中存储的预设字典库, 发送装置传输第一网络访 问日志至接收装置, 在发送装置和接收装置均存储有预设字典库, 在发送装置传输第一网 络访问日志至接收装置之后, 方法包括 : 判断接收装置存储的预设字典库是否有更新 ; 以 及如果判断出接收装置存储的预设字典库有更新, 则根据接收装置的预设字典库更新发送 装置的预设字典库。 0055 发送装置可以是访问日志生成服务器, 也可以是中转服务器, 接收装置可以是数 据处理服务器, 也可以是公布式存储, 也可以是计算集群系统。 为了及时更新接收装置中存 储的预设字典库, 提高访问日志的字段替换率, 在将第一网络访问日志至接收装置后判断 预设字典库。
38、是否有更新, 例如, 可以通过在接收装置更新预设字典库后给发送装置发送一 个预设字典库更新的信号通知接收装置预设字典库已经更新, 根据接收装置的预设字典库 更新发送装置的预设字典库, 例如, 可以通过接收装置将预设字典库中更新的部分发送给 发送装置。 0056 如下结合图 3 具体说明本发明实施例的网络访问日志处理方法。 0057 数据生成层的一个或多个终端服务器产生的原始日志通过传输协议 ( 比如 FTP、 HTTP 等 ) 传输到数据中转层, 在数据中转层对原始日志传输至数据处理层做准备, 例如, 在 数据中转层接收到原始日志后, 用预设字典库中的标识替换原始日志对应的字段, 将替换 后得。
39、到的访问日志压缩后再传输至数据处理层。 数据处理层在接收到访问日志后首先进行 存储, 然后对接收到的访问日志进行分析处理, 并进行预设字典库的更新, 将传输过来没有 被预设字典库中的标识、 替换或是识别的字段补充进预设字典库中, 数据处理层对更新后 的预设字典库同步到数据中转层, 即将预设字典库的增量部分同步到数据中转层, 数据中 转层根据数据处理层的预设字典库同步更新数据中转层的预设字典库, 并利用更新后的预 设字典库对后续接收的原始日志的字段进行替换。 0058 在初始阶段预设字典库的更新会比较频繁, 但当积累到一定程度之后预设字典库 包含的字段越来越多, 预设字典库更新量相应就会越来越少。
40、, 同时数据传输的替换率会越 来越高, 从而访问日志的传输所需的带宽成本降低, 访问日志传输的时效性提高。 0059 以每天收集 100G 访问日志量为例, 从数据中转层传输到日志处理层日志量 为 100G, 在带宽不变的前提下, 按现有技术的传输方式, 则传输日志量为 100G, 耗时设为 100s ; 按照本发明实施例对访问日志中的字段进行替换后再传输分为两种情况, 第一种 情况是获取的所有原始日志的所有字段都可按预设字典库进行替换, 则传输日志量大大 减少, 例如为 52G, 耗时相应也大大减少, 例如为 52s, 则时间缩短了 42s, 存储空间节省了 48; 第二种情况是预设字典库不。
41、完整, 只能进行部分字段的替换, 例如日志传输量为 62G, 传输时间为 62S, 传输的日志量虽大于第一种情况, 但是相比于现有技术, 日志传输量还是 大幅减少了, 相应的传输时间和存储空间也都减少了。 0060 需要说明的是, 在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的 计算机系统中执行, 并且, 虽然在流程图中示出了逻辑顺序, 但是在某些情况下, 可以以不 同于此处的顺序执行所示出或描述的步骤。 说 明 书 CN 104283723 A 9 7/8 页 10 0061 根据本发明实施例的另一方面, 提供了一种网络访问日志处理装置, 该网络访问 日志处理装置可以用于执行本发明。
42、实施例的网络访问日志处理方法, 本发明实施例的网络 访问日志处理法也可以通过本发明实施例的网络访问日志处理装置来执行。 0062 如图4所示, 该装置包括 : 第一获取单元10, 查找单元20, 替换单元30和传输单元 40。 0063 第一获取单元 10, 用于获取第一网络访问日志, 其中, 第一网络访问日志是执行网 络访问产生的原始日志, 第一网络访问日志包括多个字段。 0064 查找单元 20, 用于从预设字典库中分别查找与多个字段对应的标识, 其中, 预设字 典库中存储有字段和与字段对应的标识。 0065 替换单元 30, 用于将第一网络访问日志中的多个字段替换为对应的标识, 得到第 。
43、二网络访问日志。 0066 传输单元 40, 用于传输第二网络访问日志。 0067 本发明实施例通过查找单元 20 从预设字典库中查找第一网络访问日志中的多个 字段对应的标识, 通过替换单元 30 将第一网络访问日志中的多个字段替换为对应的标识, 得到第二网络访问日志, 通过传输单元 40 传输第二网络访问日志, 可以有效的减少访问日 志的传输量, 解决现有技术中访问日志传输效率低的问题。 0068 优选地, 该装置还包括 : 第二获取单元, 用于获取多条网络访问日志 ; 计算单元, 用于计算多条网络访问日志中字段内容相同的第一字段的个数, 其中, 第一字段为多个字 段中任意一个字段或是多个字。
44、段的组合或是多个字段中任意一个字段的多个子字段中的 任意一个子字段 ; 第一判断单元, 用于判断第一字段的个数是否大于预设值 ; 创建单元, 用 于创建预设字典库 ; 以及存储单元, 用于在第一字段的个数大于预设值时, 将第一字段和对 应的标识存储于预设字典库中。 0069 优选地, 该装置还包括 : 第二判断单元, 用于判断第一字段是否存在于预设字典库 中 ; 以及生成单元, 用于在第一字段不存在于预设字典库中时, 生成第一字段对应的标识。 0070 优选地, 第二判断单元包括 : 运算模块, 用于将第一字段进行哈希运算, 得到第一 字段的哈希值 ; 判断模块, 用于判断第一字段的哈希值是否。
45、存在于预设字典库中 ; 以及确 定模块, 用于在第一字段的哈希值不存在于预设字典库中时, 确定第一字段不存在于预设 字典库中, 并将第一字段的哈希值存储于预设字典库中, 在第一字段的哈希值存在于预设 字典库中时, 确定第一字段存在于预设字典库中。 0071 优选地, 发送装置传输第一网络访问日志至接收装置, 在发送装置和接收装置均 存储有预设字典库, 该装置还包括 : 第三判断单元, 用于判断接收装置存储的预设字典库是 否有更新 ; 以及更新单元, 用于在判断出接收装置存储的预设字典库有更新时, 则根据接收 装置的预设字典库更新发送装置的预设字典库。 0072 显然, 本领域的技术人员应该明白。
46、, 上述的本发明的各模块或各步骤可以用通用 的计算装置来实现, 它们可以集中在单个的计算装置上, 或者分布在多个计算装置所组成 的网络上, 可选地, 它们可以用计算装置可执行的程序代码来实现, 从而, 可以将它们存储 在存储装置中由计算装置来执行, 或者将它们分别制作成各个集成电路模块, 或者将它们 中的多个模块或步骤制作成单个集成电路模块来实现。这样, 本发明不限制于任何特定的 硬件和软件结合。 说 明 书 CN 104283723 A 10 8/8 页 11 0073 以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本领域的技 术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和原则之内, 所作的任何修 改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。 说 明 书 CN 104283723 A 11 1/2 页 12 图 1 图 2 说 明 书 附 图 CN 104283723 A 12 2/2 页 13 图 3 图 4 说 明 书 附 图 CN 104283723 A 13 。