本发明专利技术公开了一种基于对等网络的日志搜集方法和系统,包括:当前日志系统服务器接收到对应的业务模块服务器发送的远程过程调用协议RPC消息后,根据自身的状态和对等日志系统服务器的状态,对RPC消息进行处理,包括:将RPC消息中的日志信息记录到文件中、成为日志文件,或者,将RPC消息转发给对等日志系统服务器;对等网络中的各个日志系统服务器将各自记录的日志文件上传到指定的文件存储服务器。通过本发明专利技术实现了业务逻辑和日志逻辑解耦合的同时提升了日志搜索系统的性能和可靠性。
【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种基于对等网络的日志搜集方法和系统,包括:当前日志系统服务器接收到对应的业务模块服务器发送的远程过程调用协议RPC消息后,根据自身的状态和对等日志系统服务器的状态,对RPC消息进行处理,包括:将RPC消息中的日志信息记录到文件中、成为日志文件,或者,将RPC消息转发给对等日志系统服务器;对等网络中的各个日志系统服务器将各自记录的日志文件上传到指定的文件存储服务器。通过本专利技术实现了业务逻辑和日志逻辑解耦合的同时提升了日志搜索系统的性能和可靠性。【专利说明】—种基于对等网络的日志搜集方法和系统
本专利技术涉及文件搜索
,尤其涉及一种基于对等网络的日志搜集方法和系统。
技术介绍
目前,日志搜集系统主要分为两大类:一种是传统星型非分离式日志搜集系统,如图1所示,该系统中由业务模块服务器(如服务的请求响应服务器)产生日志信息并记录成日志文件,再上传到某个或某些地址(FTP文件服务器或网络文件系统),汇总日志文件。一种是基于层次网络的分离式日志搜集系统,该类系统的典型的代表为Facebook开源的Scribe系统,这类系统主要有以下特点:1、日志系统服务器对于业务模块服务器而言是服务器,接受业务模块服务器发送的远程过程调用协议(RPC,Remote Procedure CallProtocol)请求。业务模块服务器将生成的日志信息通过RPC方式传给日志系统服务器。2、日志系统服务器可以把收到的日志信息记录为日志文件、也可以把日志信息发送给下一级日志系统服务器,日志的处理过程是基于配置的。上述的日志搜集系统主要存在如下的问题:传统星 型非分离式日志搜集系统中,业务模块服务器产生日志信息并将日志信息记录到文件,这样日志记录的相关逻辑和业务逻辑在同一个服务器上,这种方式存在如下缺点:1、业务逻辑和日志记录相关的逻辑相互耦合,性能只能取两者的低值。日志记录一般会占用大量10消耗,会影响业务服务性能。2、日志记录与业务分离的另一个好处是:日志记录更灵活。业务逻辑不需要关注日志记录相关的逻辑(如日志格式、记录到本地还是网络文件系统等),而传统星型非分离式日志搜集系统确不具备这些特点,相对而言日志记录不灵活,业务逻辑需要关注日志记录相关的逻辑,会影响业务服务性能。3、从日志记录到日志上传都是单线逻辑,即某一个环节出错都会造成日志记录不成功,没有可靠的容错机制。基于层次网络的分离式日志搜集系统,有如下缺点:该类系统的网络结构单一,日志记录效率和可靠性低。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种基于对等网络的日志搜集方法和系统,以解决现有日志搜集系统中日志记录效率和可靠性低、影响业务服务性能的问题。为达到上述目的,本专利技术的技术方案是这样实现的:本专利技术提供了一种基于对等网络的日志搜集方法,建立由多个日志系统服务器组成的对等网络,该方法还包括:当前日志系统服务器接收到对应的业务模块服务器发送的远程过程调用协议RPC消息后,根据自身的状态和对等日志系统服务器的状态,对所述RPC消息进行处理,包括:将所述RPC消息中的日志信息记录到文件中、成为日志文件,或者,将所述RPC消息转发给对等日志系统服务器;所述对等网络中的各个日志系统服务器将各自记录的日志文件上传到指定的文件存储服务器。优选地,日志系统服务器的状态包括:反应日志系统服务器的类型、能力和所在网络的能力信息、反应日志系统服务器负载的性能信息、以及反应与对等日志系统服务器间距离的距离信息。优选地,所述将日志信息记录到文件中包括:将日志信息记录到本地文件或网络文件中。优选地,所述当前日志系统服务器或对等日志系统服务器接收到RPC消息后,将RPC消息放到自身的任务队列中。优选地,对所述RPC消息进行处理时按照如下规则:按照优先级从高到低的顺序处理任务队列中的RPC消息;和/或,统计任务队列中RPC消息的类型,优先处理消息数量最多的类型对应的RPC消息;和/或,对于同一类型的RPC消息,优先处理进入任务队列最早的RPC消息。本专利技术还提供了一种基于对等网络的日志搜集系统,包括:业务模块服务器,用于产生日志信息,并通过RPC消息发送给对应的日志系统服务器;日志系统服务器,用于接收到对应的业务模块服务器发送的RPC消息后,根据自身的状态和对等日志系统服务器的状态,对所述RPC消息进行处理,包括:将所述RPC消息中的日志信息记录到文件中、成为日志文件,或者,将所述RPC消息转发给所述对等日志系统服务器;日志系统服务器,还用于将自身记录的日志文件上传到指定的文件存储服务器。优选地,日志系统服务器的状态包括:反应日志系统服务器的类型、能力和所在网络的能力信息、反应日志系统服务器负载的性能信息、以及反应与对等日志系统服务器间距离的距离信息。 优选地,所述日志系统服务器,还用于将日志信息记录到本地文件或网络文件中。优选地,所述日志系统服务器或所述对等日志系统服务器,还用于接收到的RPC消息后放到自身的任务队列中。优选地,所述日志系统服务器,还用于按照如下规则对RPC消息进行处理:按照优先级从高到低的顺序处理任务队列中的RPC消息;和/或,统计任务队列中RPC消息的类型,优先处理消息数量最多的类型对应的RPC消息;和/或,对于同一类型的RPC消息,优先处理进入任务队列最早的RPC消息。本专利技术基于对等网络的日志搜集的方法和系统:首先建立由多个日志系统服务器组成的对等网络,在对等网络中,当前日志系统服务器接收对应的业务模块服务器发送的RPC消息,并根据自身的状态和对等日志系统服务器的状态,对RPC消息进行处理,包括:将RPC消息中的日志信息记录到文件中、成为日志文件,或者,将RPC消息转发给对等日志系统服务器。通过该方法,日志记录的相关逻辑由日志系统服务器执行,业务逻辑由业务模块服务器执行,这样,业务逻辑和日志逻辑解耦合,提高了业务模块服务器的性能,同时,利用对等网络的高效性和可靠性,也大大地提升了日志搜索系统的性能和可靠性。【专利附图】【附图说明】图1为传统星型非分离式日志搜集系统示意图;图2为基于层次网络的分离式日志搜集系统示意图;图3为本专利技术基于对等网络的日志搜集系统示意图。【具体实施方式】下面结合附图和具体实施例对本专利技术的技术方案进一步详细阐述。本专利技术基于对等网络的日志搜集的基本思想是:首先建立由多个日志系统服务器组成的对等网络,在对等网络中,当前日志系统服务器接收对应的业务模块服务器发送的RPC消息,并根据自身的状态和对等日志系统服务器的状态,对RPC消息进行处理,包括:将RPC消息中的日志信息记录到文件中、成为日志文件,或者,将RPC消息转发给对等日志系统服务器。通过该方法,日志记录的相关逻辑由日志系统服务器执行,业务逻辑由业务模块服务器执行,这样,业务逻辑和日志逻辑解耦合,提高了业务模块服务器的性能,同时,利用对等网络的高效性和可靠性,也大大地提升了日志搜索系统的性能和可靠性。本专利技术基于对等网络的日志搜集如图3所示,日志系统服务器之间发现对方,并建立对等网络,其中,对等网路可采用P2P机制建立。对等网络中,互为对等节点的日志系统服务器之间要周期性地互通状态,较佳地,日志系统服务器的状态包括:能力信息、性能信息和距离信息,其中:能力本文档来自技高网...
【技术保护点】
一种基于对等网络的日志搜集方法,其特征在于,建立由多个日志系统服务器组成的对等网络,该方法还包括:当前日志系统服务器接收到对应的业务模块服务器发送的远程过程调用协议RPC消息后,根据自身的状态和对等日志系统服务器的状态,对所述RPC消息进行处理,包括:将所述RPC消息中的日志信息记录到文件中、成为日志文件,或者,将所述RPC消息转发给对等日志系统服务器;所述对等网络中的各个日志系统服务器将各自记录的日志文件上传到指定的文件存储服务器。
【技术特征摘要】
【专利技术属性】
技术研发人员:樊华,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。