实时日志收集方法、系统和应用服务器集群技术方案

技术编号:13155714 阅读:57 留言:0更新日期:2016-05-09 18:33
本发明专利技术涉及一种实时日志收集方法、系统和应用服务器集群。其中,所述方法包括:在用户终端打开第一应用服务器所提供网页的情况下,第一应用服务器控制用户终端运行预设的日志记录脚本;在日志记录脚本检测到用户进行设定的临时用户行为的情况下,生成包括与临时用户行为相关的临时日志信息的HTTP请求,并从用户终端向实时日志收集系统的第一接收源发送HTTP请求;以及第一接收源将HTTP请求经由实时日志收集系统的第一Kafka通道发送至存储系统。根据本发明专利技术实施例的实时日志收集方法、系统和应用服务器集群能够快速、准确地收集用户行为日志,并快速、准确地获取与关注用户行为相关的信息。

【技术实现步骤摘要】

本专利技术涉及互联网
,尤其涉及一种实时日志收集方法、系统和应用服务器集群
技术介绍
对于大型互联网门户,每天都有上千万用户的访问量。可以通过收集和记录用户对网站功能的消费,然后对这些消费进行离线分析,为网站更好地向用户提供个性化服务提供数据依据。并且,还可以为网安在应对网络热门事件或突发事件时提供调查依据。传统收集日志的方法是通过前端(客户端)在网页中添加JavaScript脚本,事先确定动作属性(例如播放视频和发布视频等),将用户的点击动作汇总到远程服务器来分析。这种方法存在能够通过模拟用户行为来捏造点击数据等的缺陷。目前还有一种收集日志的方法,在后端生成日志后,通过scp命令上传、下载或通过rsync命令定时同步等方式收集汇总,然后通过机器脚本分析、或者人工观察统计、或者图形绘制等方式来分析。这种方法的实时性较差。另外,由于上述两种方法均需要人工干预,因此对数据规模的适用性较差,无法支持网站持续发展产生的大量日志,并且人工干预过多,不能保证较高的准确性。
技术实现思路
技术问题有鉴于此,本专利技术要解决的技术问题是,如何快速、准确地收集用户行为日志,并快速、准确地获取与关注用户行为相关的信息。解决方案根据本专利技术的一个方面,提供了一种实时日志收集方法,用于收集用户行为日志,包括:在用户终端打开第一应用服务器所提供网页的情况下,所述第一应用服务器控制所述用户终端运行预设的日志记录脚本;在所述日志记录脚本检测到所述用户进行设定的临时用户行为的情况下,生成包括与所述临时用户行为相关的临时日志信息的超文本传输协议HTTP请求,并从所述用户终端向实时日志收集系统的第一接收源发送所述HTTP请求,所述临时日志信息包括所述用户终端的IP地址、进行所述临时用户行为的时间和用户ID中的至少一项;以及所述第一接收源将所述HTTP请求经由所述实时日志收集系统的第一卡夫卡Kaf ka通道发送至存储系统。对于上述实时日志收集方法,在一种可能的实现方式中,在所述第一接收源接收到从所述用户终端发送的所述HTTP请求之后,还包括:所述实时日志收集系统的拦截器根据所述HTTP请求,统计第一时间间隔内进行所述临时用户行为的次数。对于上述实时日志收集方法,在一种可能的实现方式中,还包括:第二应用服务器记录与所述用户行为相关的行为属性,并将在第二时间间隔内所记录的行为属性按照预先设定的日志格式生成日志文件,所述行为属性包括所述用户终端的IP地址、所述用户行为的名称、进行所述用户行为的时间和用户ID中的至少一项;所述实时日志收集系统的代理模块在检测到存在所述日志文件的情况下,将所述日志文件发送至所述实时日志收集系统的第二接收源;以及所述第二接收源将所述日志文件经由所述实时日志收集系统的第二Kaf ka通道发送至所述存储系统。对于上述实时日志收集方法,在一种可能的实现方式中,还包括:所述实时日志收集系统的拦截器根据所述日志文件统计第三时间间隔内进行特定用户行为的次数,并在统计出的次数大于设定阈值的情况下,发送异常信息。对于上述实时日志收集方法,在一种可能的实现方式中,所述存储系统包括分布式文件系统和/或数据库。根据本专利技术的另一个方面,提供了一种实时日志收集系统,用于收集用户行为日志,包括:第一接收源,与用户终端连接,用于从所述用户终端接收包括与临时用户行为相关的临时日志信息的HTTP请求,所述临时日志信息包括所述用户终端的IP地址、进行所述临时用户行为的时间和用户ID中的至少一项,其中,在所述用户终端打开第一应用服务器所提供网页的情况下,所述第一应用服务器控制所述用户终端运行预设的日志记录脚本,在所述日志记录脚本检测到所述用户进行设定的临时用户行为的情况下,生成所述HTTP请求;以及第一Kafka通道,与所述第一接收源连接,用于从所述第一接收源接收所述HTTP请求,并发送至存储系统。对于上述实时日志收集系统,在一种可能的实现方式中,还包括:拦截器,与所述第一接收源和所述第一Kafka通道分别连接,用于从所述第一接收源拦截所述HTTP请求;以及分析模块,与所述拦截器连接,用于从所述拦截器接收所述HTTP请求,并根据所述HTTP请求,统计第一时间间隔内进行所述临时用户行为的次数。对于上述实时日志收集系统,在一种可能的实现方式中,还包括:代理模块,与第二应用服务器连接,用于检测是否存在日志文件,在检测到存在所述日志文件的情况下,获取所述日志文件,其中,第二应用服务器记录与所述用户行为相关的行为属性,并将在第二时间间隔内所记录的行为属性按照预先设定的日志格式生成所述日志文件,所述行为属性包括所述用户终端的IP地址、所述用户行为的名称、进行所述用户行为的时间和用户ID中的至少一项;第二接收源,与所述代理模块连接,用于从所述代理模块接收所述日志文件;以及第二Kaf ka通道,与所述第二接收源连接,用于从所述第二接收源接收所述日志文件,并发送至所述存储系统。对于上述实时日志收集系统,在一种可能的实现方式中,所述拦截器还与所述第二接收源和所述第二 Kafka通道分别连接,并且用于从所述第二接收源拦截所述日志文件;所述分析模块还用于统计第三时间间隔内进行特定用户行为的次数,并在统计出的次数大于设定阈值的情况下,发送异常信息。根据本专利技术的又一个方面,提供了一种应用服务器集群,包括第一应用服务器,所述第一应用服务器包括:脚本设置模块,与所述用户终端连接,用于预设日志记录脚本;网页提供模块,与所述用户终端连接,用于为所述用户终端提供网页服务;控制模块,与所述用户终端连接,用于在所述用户终端打开所述网页提供模块所提供网页的情况下,控制所述用户终端运行所述日志记录脚本;以及HTTP请求生成模块,与所述用户终端连接,在所述日志记录脚本检测到所述用户进行设定的临时用户行为的情况下,生成包括与所述临时用户行为相关的临时日志信息的超文本传输协议HTTP请求,所述临时日志信息包括所述用户终端的IP地址、进行所述临时用户行为的时间和用户ID中的至少一项。对于上述应用服务器集群,在一种可能的实现方式中,还包括多个第二应用服务器,其中,各所述第二应用服务器包括:记录模块,用于记录与用户行为相关的行为属性;以及日志文件生成模块,与所述记录模块连接,用于将在第二时间间隔内所记录的行为属性按照预先设定的日志格式生成日志文件,所述行为属性包括所述用户终端的IP地址、所述用户行为的名称、进行所述用户行为的时间和用户ID中的至少一项。有益效果通过在用户终端预先设置日志记录脚本,并在用户终端打开特定网页的情况下,运行该日志记录脚本,在日志记录脚本检测到用户进行设定的临时用户行为的情况下,生成包括与临当前第1页1 2 3 4 本文档来自技高网...

【技术保护点】
一种实时日志收集方法,用于收集用户行为日志,其特征在于,包括:在用户终端打开第一应用服务器所提供网页的情况下,所述第一应用服务器控制所述用户终端运行预设的日志记录脚本;在所述日志记录脚本检测到所述用户进行设定的临时用户行为的情况下,生成包括与所述临时用户行为相关的临时日志信息的超文本传输协议HTTP请求,并从所述用户终端向实时日志收集系统的第一接收源发送所述HTTP请求,所述临时日志信息包括所述用户终端的IP地址、进行所述临时用户行为的时间和用户ID中的至少一项;以及所述第一接收源将所述HTTP请求经由所述实时日志收集系统的第一卡夫卡Kafka通道发送至存储系统。

【技术特征摘要】

【专利技术属性】
技术研发人员:欧樑杨华涛韦杰林岳顾思斌潘柏宇王冀
申请(专利权)人:传线网络科技上海有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1