CN110795412A - 日志信息的处理方法、装置及存储介质 - Google Patents
日志信息的处理方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110795412A CN110795412A CN201910959319.XA CN201910959319A CN110795412A CN 110795412 A CN110795412 A CN 110795412A CN 201910959319 A CN201910959319 A CN 201910959319A CN 110795412 A CN110795412 A CN 110795412A
- Authority
- CN
- China
- Prior art keywords
- log information
- information processing
- server
- application server
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开关于一种日志信息的处理方法、装置及存储介质,其中,所述方法包括:获取日志信息处理命令;对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器;发送所述日志信息处理命令至对应的所述应用服务器;接收对应的所述应用服务器返回的日志信息处理结果,并将所述日志信息处理结果进行转存,所述日志信息处理结果为对应的所述应用服务器根据所述日志信息处理命令对本地的日志信息进行相关处理所得。本公开实现了日志信息的缓存,避免了日志信息丢失。而且,本公开的实施例的日志信息处理服务器不需要部署包含多个角色的配置文件,部署过程简单,减轻了日志信息处理服务器的管理压力和维护压力。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种日志信息的处理方法、装置及存储介质。
背景技术
随着网络技术的发展,互联网上的用户越来越多,相应地,也产生了数量级巨大的用户行为。
日志信息的收集成为了各应用服务器为改善应用水平的重要手段。目前,存在几种通用的日志信息收集方案。例如,Flume是高可用的、可靠的、分布式的海量日志信息采集、集合和传输系统。Flume支持定制各类日志信息发送方,对日志信息具有简单的处理功能。Flume是基于流式的日志信息采集方式,产生一条日志信息即发送一条日志信息,常用于在线实时分析日志信息。但是Flume配置过程复杂,多角色的关系在配置文件中交织在一起,不便于管理,维护成本比较高。Logstash是一套灵活的、插件化、弹性伸缩的日志信息收集系统。Logstash实现了日志信息传输、格式化处理、格式化输出等功能。但是Logstash消耗资源较大,只支持Linux系统,没有日志信息缓存机制,存在日志信息丢失的风险。syslog-ng是Linux系统自带的日志信息采集方案,支持多方位的日志信息过滤条件,能够进行不同防火墙网段的日志信息转发。但是syslog-ng配置过程复杂,只支持Linux系统,没有日志信息缓存机制,存在日志信息丢失的风险。
相关技术中,通用的日志信息采集方案需要部署包含多个角色的关系的配置文件,部署过程复杂,不便于管理和维护,而且,没有日志信息缓存机制,存在日志信息丢失的风险。
发明内容
本公开提供了一种日志信息的处理方法、装置及存储介质,以至少解决相关技术中通用的日志信息采集方案需要部署包含多个角色的关系的配置文件,部署过程复杂,不便于管理和维护,而且,没有日志信息缓存机制,存在日志信息丢失的风险的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种日志信息的处理方法,应用于日志信息处理服务器,所述方法包括:获取日志信息处理命令;对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器;发送所述日志信息处理命令至对应的所述应用服务器;接收对应的所述应用服务器返回的日志信息处理结果,并将所述日志信息处理结果进行转存,所述日志信息处理结果为对应的所述应用服务器根据所述日志信息处理命令对本地的日志信息进行相关处理所得。
可选地,在所述发送所述日志信息处理命令至对应的所述应用服务器的步骤之前,所述方法还包括:接收来自对应的所述应用服务器的心跳数据包,所述心跳数据包用于保持所述日志信息处理服务器与对应的所述应用服务器之间的长连接,所述心跳数据包携带有对应的所述应用服务器的网络地址。
可选地,所述对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器的步骤,包括:从所述日志信息处理命令中提取得到对应的所述应用服务器的标识信息;根据所述标识信息以及预设的对应关系,确定与所述标识信息对应的负载均衡服务器,所述对应关系表示标识信息与负载均衡服务器之间的对应关系;将与对应的所述负载均衡服务器通信连接的应用服务器作为对应的所述应用服务器。
可选地,所述发送所述日志信息处理命令至对应的所述应用服务器的步骤,包括:将所述日志信息处理命令发送至对应的所述负载均衡服务器,以便对应的所述负载均衡服务器通过所述心跳数据包在对应的所述应用服务器上的发送端口,转发所述日志信息处理命令至对应的所述应用服务器。
可选地,所述获取日志信息处理命令的步骤,包括:通过与所述日志信息处理服务器连接的网页端或应用程序编程接口API接收所述日志信息处理命令,所述日志信息处理命令用于采集、修改或停止采集各所述应用服务器上的日志信息。
可选地,所述将所述日志信息处理结果进行转存的步骤,包括:将所述日志信息处理结果发送至日志信息订阅服务器,以便所述日志信息订阅服务器根据用户订阅需求存储所述日志信息处理结果至日志信息数据库中。
可选地,对应的所述应用服务器上部署有基于二进制安装包进行安装的日志信息处理客户端模块,所述日志信息处理客户端模块用于从所述日志信息处理命令中解析得到对应的插件的符号,根据对应的所述插件的符号确定所述日志信息处理客户端模块上对应的所述插件,并利用对应的所述插件执行日志信息处理命令,以采集得到所述日志信息,对所述日志信息进行加密、压缩得到所述日志信息处理结果。
可选地,所述方法还包括:获取插件处理命令;对所述插件处理命令进行解析,确定与所述插件处理命令对应的日志信息处理客户端模块,并发送所述插件处理命令至对应的所述日志信息处理客户端模块,以便对应的所述日志信息处理客户端模块根据所述插件处理命令对所述插件进行添加、删除、更新、关闭中的任意一项操作。
根据本公开实施例的第二方面,提供一种日志信息的处理装置,应用于日志信息处理服务器,所述处理装置包括:获取单元,被配置为获取日志信息处理命令;解析单元,被配置为对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器;发送单元,被配置为发送所述日志信息处理命令至对应的所述应用服务器;转存单元,被配置为接收对应的所述应用服务器返回的日志信息处理结果,并将所述日志信息处理结果进行转存,所述日志信息处理结果为对应的所述应用服务器根据所述日志信息处理命令对本地的日志信息进行相关处理所得。
可选地,还包括:接收单元,被配置为在所述发送单元发送所述日志信息处理命令至对应的所述应用服务器之前,接收来自对应的所述应用服务器的心跳数据包,所述心跳数据包用于保持所述日志信息处理服务器与对应的所述应用服务器之间的长连接,所述心跳数据包携带有对应的所述应用服务器的网络地址。
可选地,所述解析单元,包括:标识提取单元,被配置为从所述日志信息处理命令中提取得到对应的所述应用服务器的标识信息;负载确定单元,被配置为根据所述标识信息以及预设的对应关系,确定与所述标识信息对应的负载均衡服务器,所述对应关系表示标识信息与负载均衡服务器之间的对应关系;服务器确定单元,被配置为将与对应的所述负载均衡服务器通信连接的应用服务器作为对应的所述应用服务器。
可选地,所述发送单元,被配置为将所述日志信息处理命令发送至对应的所述负载均衡服务器,以便对应的所述负载均衡服务器通过所述心跳数据包在对应的所述应用服务器上的发送端口,转发所述日志信息处理命令至对应的所述应用服务器。
可选地,所述获取单元,被配置为通过与所述日志信息处理服务器连接的网页端或应用程序编程接口API接收所述日志信息处理命令,所述日志信息处理命令用于采集、修改或停止采集各所述应用服务器上的日志信息。
可选地,所述转存单元,被配置为将所述日志信息处理结果发送至日志信息订阅服务器,以便所述日志信息订阅服务器根据用户订阅需求存储所述日志信息处理结果至日志信息数据库中。
可选地,对应的所述应用服务器上部署有基于二进制安装包进行安装的日志信息处理客户端模块,所述日志信息处理客户端模块用于从所述日志信息处理命令中解析得到对应的插件的符号,根据对应的所述插件的符号确定所述日志信息处理客户端模块上对应的所述插件,并利用对应的所述插件执行日志信息处理命令,以采集得到所述日志信息,对所述日志信息进行加密、压缩得到所述日志信息处理结果。
可选地,所述获取单元,还被配置为获取插件处理命令;所述解析单元,还被配置为对所述插件处理命令进行解析,确定与所述插件处理命令对应的日志信息处理客户端模块,并发送所述插件处理命令至对应的所述日志信息处理客户端模块,以便对应的所述日志信息处理客户端模块根据所述插件处理命令对所述插件进行添加、删除、更新、关闭中的任意一项操作。
根据本公开实施例的第三方面,提供一种装置,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如第一方面所述的日志信息的处理方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由装置的处理器执行时,使得所述装置能够执行如第一方面所述的日志信息的处理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括:可读性程序代码,所述可读性程序代码由装置的处理器执行以完成如第一方面所述的日志信息的处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开的实施例应用于日志信息处理服务器。该日志信息处理服务器可以获取日志信息处理命令,对日志信息处理命令进行解析确定与日志信息处理命令对应的应用服务器,进而发送日志信息处理命令至对应的应用服务器,以便对应的应用服务器根据日志信息处理命令对日志信息进行相关处理,将日志信息处理结果返回至日志信息处理服务器。日志信息处理服务器可以对日志信息处理结果进行转存。
本公开的实施例通过日志信息处理服务器将日志信息处理命令发送至对应的应用服务器,以便应用服务器对本地的日志信息进行相关处理,并将日志信息处理结果返回至日志信息处理服务器,日志信息处理服务器再对日志信息处理结果进行转存,实现了日志信息的缓存,避免了日志信息丢失。而且,本公开的实施例的日志信息处理服务器不需要部署包含多个角色的配置文件,部署过程简单,减轻了日志信息处理服务器的管理压力和维护压力。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种日志信息的处理方法的流程图。
图2是根据一示例性实施例示出的一种日志信息的采集方法的架构图。
图3是根据一示例性实施例示出的一种日志信息的采集方法中心跳数据包的发送流程图。
图4是根据一示例性实施例示出的一种日志信息的采集方法的整体业务流程图。
图5是根据一示例性实施例示出的一种日志信息的处理装置的框图。
图6是根据一示例性实施例示出的一种日志信息的处理装置的框图。
图7是根据一示例性实施例示出的一种用于对日志信息进行处理的装置的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种日志信息的处理方法的流程图,如图1所示,日志信息的处理方法可以应用于日志信息处理服务器中,在该日志信息处理服务器中可以通过二进制安装包的安装方式部署日志信息处理服务器端模块,二进制安装包的安装过程不依赖日志信息处理服务器的操作系统和第三方环境,安装过程简单。该日志信息的处理方法可以包括以下步骤。
在步骤S11中,获取日志信息处理命令。
在本公开实施例中,日志信息处理命令可以用于对日志信息进行采集、停止采集或修改等相关处理,本公开实施例对日志信息处理命令的作用、格式等不作具体限制。
在本公开的一种示例性实施例中,在获取日志信息处理命令时,可以通过与日志信息处理服务器连接的网页端或者应用程序编程接口(Application ProgrammingInterface,API)接收日志信息处理命令。在实际应用中,用户可以在网页端或者通过API为日志信息处理服务器下达日志信息处理命令。
在步骤S12中,对日志信息处理命令进行解析,确定与日志信息处理命令对应的应用服务器。
在本公开的实施例中,可以按照预设的解析规则对日志信息处理命令进行解析。解析规则可以依据日志信息处理命令的各字段表示的实际内容而定,例如,日志信息处理命令的第1-5字段表示日志信息处理命令的处理类型,具体可以包括采集、停止采集、修改等。日志信息处理命令的第6-10字段表示应用服务器标识信息,日志信息处理命令的第11-15字段表示待处理的日志信息的类型、时间、位置等等。本公开的实施例对解析规则的内容、要求等不作具体限制。
本步骤S12对日志信息处理命令进行解析时,可以按照解析规则从日志信息处理命令中提取得到对应的应用服务器的标识信息,即提取得到目标应用服务器的标识信息。进而,根据提取得到的标识信息以及预设的对应关系确定对应的负载均衡服务器,将与对应的负载均衡服务器通信连接的应用服务器作为对应的应用服务器。
在本公开的实施例中,负载均衡服务器可以与日志信息处理服务器为同一台服务器,负载均衡服务器也可以为单独的服务器。负载均衡服务器的主要作用是对日志信息处理服务器进行集群化管理,实现日志信息处理服务器与应用服务器的统一接入,实现了日志信息处理服务器之间的负载均衡。无论负载均衡服务器为日志信息处理服务器,还是为单独的服务器,负载均衡服务器均可以配置多个端口,每个端口可以连接日志信息处理服务器或者应用服务器。因此,上述对应关系具体可以为应用服务器的标识信息与负载均衡服务器的端口之间的对应关系。
在步骤S13中,发送日志信息处理命令至对应的应用服务器。
在本公开的实施例中,可以将日志信息处理命令发送至对应的负载均衡服务器,以便对应的负载均衡服务器转发日志信息处理命令至对应的应用服务器。
在本公开的一种示例性实施例中,负载均衡服务器在转发日志信息处理命令至对应的应用服务器时,可以通过对应的应用服务器上的某端口转发日志信息处理命令至对应的应用服务器。上述某端口可以为对应的应用服务器向日志信息处理服务器定期发送心跳数据包的端口。对应的应用服务器定期向日志信息处理服务器发送心跳数据包的目的之一为保持对应的应用服务器与日志信息处理服务器之间的长连接,另一个目的为开放端口以保持对应的应用服务器与日志信息处理服务器之间的数据传输。上述心跳数据包可以携带对应的应用服务器的网络地址,日志信息处理服务器可以通过网络地址确定哪个应用服务器与其保持长连接。
对应的应用服务器上部署有基于二进制安装包进行安装的日志信息处理客户端模块,日志信息处理客户端模块可以从日志信息处理命令中解析得到插件的符号,根据插件的符号确定日志信息处理客户端模块上对应的插件,进而利用对应的插件执行日志信息处理命令,以采集得到日志信息,并对采集得到的日志信息进行加密、压缩等操作。除了采集日志信息之外,利用对应的插件还可以对日志信息进行修改等。需要说明的是,日志信息处理客户端模块中的各插件可以具有不同的功能,例如,有的插件的功能为采集日志信息,有的插件的功能为修改日志信息,本公开的实施例对日志信息处理客户端模块中的插件的数量和各插件的功能等不作具体限制。
在本公开的一种示例性实施例中,应用服务器还可以获取插件处理命令,对获取到的插件处理命令进行解析,确定与插件处理命令对应的日志信息处理客户端模块,发送插件处理命令至对应的日志信息处理客户端模块,以便对应的日志信息处理客户端模块根据插件处理命令对插件进行添加、删除、更新、关闭等操作。
需要说明的是,日志信息处理服务器对插件处理命令的处理过程可以参照对日志信息处理命令的处理过程,区别之一在于日志信息处理命令与插件处理命令的格式、内容不同,对日志信息处理命令的解析规则与对插件处理命令的解析规则不同。
在步骤S14中,接收对应的应用服务器返回的日志信息处理结果,并将日志信息处理结果进行转存。
在本公开的实施例中,对应的应用服务器采集到日志信息之后,可以对日志信息进行加密、压缩等处理得到日志信息处理结果,进而通过与负载均衡服务器之间的长连接传输日志信息处理结果至负载均衡服务器,负载均衡服务器再将接收到的日志信息处理结果转发到日志信息处理服务器。
在本公开的一种示例性实施例中,日志信息处理服务器接收到日志信息处理结果之后,可以将日志信息处理结果发送至日志信息订阅服务器,以便日志信息订阅服务器根据用户订阅需求存储日志信息处理结果至日志信息数据库中,或者,推送日志信息处理结果至用户终端等。其中,日志信息订阅服务器上部署有基于二进制安装包进行安装的日志信息订阅模块,该日志信息订阅模块可以执行获取用户订阅需求、存储日志信息处理结果和推送日志信息处理结果等操作。
基于上述关于一种日志信息的处理方法的相关说明,下面介绍一种日志信息的采集方法,该日志信息的采集方法主要包含有三个技术模块,分别为日志信息采集客户端模块(Tlog_agent)、日志信息集中收集服务端模块(Tlog_server)、日志信息转存中间件模块(Kafka)。其中,Tlog_agent部署在各应用服务器上,是实时采集应用系统数据或者物理数据的独立模块。Tlog_server是一套集群化的独立模块,主要功能是接收Tlog_agent发送的日志信息,并转发日志信息至Kafka。Kafka提供用户操作命令以完成日志信息的订阅和采集。在实际应用中,用户可以通过Tlog_server下发命令或文件,通过系统传输链路传输到Tlog_agent。Tlog_agent执行相关命令或者文件,并监听执行结果。Tlog_agent还可以对采集到日志信息进行加密、压缩后再通过长连接链路回传到Tlog_server。Tlog_server将日志信息转发到Kafka。用户可以根据实际需求从Kafka中订阅相关日志信息,进一步做相关计算和存储。
该日志信息的采集方法的架构图如图2所示,用户可以向Tlog_server输入日志信息采集命令,Tlog_server通过代理服务器(Nginx)与Tlog_agent连接,并通过Nginx将日志信息采集命令发送至Tlog_agent。Tlog_agent根据日志信息采集命令调用相关的插件采集日志信息,并将采集到的日志信息通过Nginx回传给Tlog_server。Tlog_server将日志信息转发给Kafka,以进行日志信息订阅和存储等。
下面分别详细介绍上述三个技术模块。
1、Tlog_agent。Tlog_agent使用Golang实现,主要包含心跳模块、信令接收模块、插件运行模块、数据传输模块。
1.1、心跳模块定时发起心跳数据包至Tlog_server,一个目的为保持与Tlog_server的通信,让Tlog_server感知其存活状态;另一个目的是让Tlog_agent保持一个端口开放,能实时接收Tlog_server发送来的文件或者命令。
1.2、信令接收模块定制了Tlog_agent与Tlog_server之间的信令交互结构。信令交互结构有两种,一种是命令模式,即通知Tlog_agent执行一段命令;另一种是命令加文件模式,即通知Tlog_agent接收一个文件,并且执行这个文件指定的命令。
1.3、插件运行模块用于执行Tlog_agent中的某个插件,并获取插件的执行结果。
1.4、数据传输模块将收集到的应用日志信息或系统日志信息传输到Tlog_server。
2、Tlog_server用于中心化接收日志信息并转发日志信息到Kafka,Tlog_server使用Golang实现,主要包含数据接收模块、命令接收模块、数据转发模块
2.1、数据接收模块用于接收Tlog_agent传输的日志信息和心跳数据包。
2.2、命令接收模块用于解析用户操作命令,将解析结果发送给Tlog_agent。
2.3、数据转发模块将Tlog_agent采集到的日志信息转发到Kafka。
3、Kafka用于接收Tlog_server转发的日志信息,实现日志信息的入库处理,例如将日志信息存储到结构化数据库或非结构化数据库中。
如图3所示,Tlog_agent中的心跳模块通过开放的端口定时发送心跳数据包至Nginx,Nginx对Tlog_server进行集群化管理,实现Tlog_agent与Tlog_server的统一接入,也实现了Tlog_agent多机器间的负载均衡。Nginx将心跳数据包转发至Tlog_server。Tlog_server记录下Tlog_agent的端口与Tlog_agent的网络地址。
如图4所示,示出了该日志信息的采集方法的整体业务流程图。该日志信息的采集方法具体可以包括如下步骤。
步骤S41,用户可以通过Web页面或者API向Tlog_server发送日志信息采集命令。
步骤S42,Tlog_server解析日志信息采集命令。
Tlog_server通过解析日志信息采集命令确定对应的Tlog_agent,再查找到与对应的Tlog_agent保持长连接的Nginx,进而执行步骤S43。
步骤S43,Tlog_server将日志信息采集命令发送至查找到的Nginx。
步骤S44,Nginx转发日志信息采集命令至对应的Tlog_agent。
步骤S45,Tlog_agent分析日志信息采集命令,调用相关的插件。
步骤S46,插件执行日志信息采集命令,并监听插件返回的日志信息,对日志信息进行压缩、加密等操作。
步骤S47,插件通过与Nginx的长连接返回日志信息至Tlog_server。
在实际应用中,插件可以返回日志信息至Tlog_agent,通知Tlog_agent转发日志信息至Nginx,Nginx再转发日志信息至Tlog_server。
步骤S48,Tlog_server将日志信息转发至Kafka。
上述日志信息采集命令具体可以包括日志信息开始采集命令、日志信息停止采集命令和日志信息修改采集命令等,本公开的实施例对日志信息采集命令的内容和形式等不作具体限制。
该日志信息的采集方法使用Golang(一种静态强类型、编译型语言)、传输控制协议(Transmission Control Protocol,TCP)和套接字(Socket)框架,具有高效性、灵活性。采用TCP传输方式保障日志信息的安全和稳定,避免日志信息丢失。采用Golang语言开发实现,支持任何系统,部署安装方式简单。还实现插件化和双向通信方式,通过双向通道发送命令以开启和关闭日志信息收集需求。可以随时添加、删除、更新、关闭日志信息采集插件,且实时生效。还支持日志信息压缩、日志信息加密等功能,保障了日志信息的安全性。
本公开的实施例应用于日志信息处理服务器。该日志信息处理服务器可以获取日志信息处理命令,对日志信息处理命令进行解析确定与日志信息处理命令对应的应用服务器,进而发送日志信息处理命令至对应的应用服务器,以便对应的应用服务器根据日志信息处理命令对日志信息进行相关处理,将日志信息处理结果返回至日志信息处理服务器。日志信息处理服务器可以对日志信息处理结果进行转存。
本公开的实施例通过日志信息处理服务器将日志信息处理命令发送至对应的应用服务器,以便应用服务器对本地的日志信息进行相关处理,并将日志信息处理结果返回至日志信息处理服务器,日志信息处理服务器再对日志信息处理结果进行转存,实现了日志信息的缓存,避免了日志信息丢失。而且,本公开的实施例的日志信息处理服务器不需要部署包含多个角色的配置文件,部署过程简单,减轻了日志信息处理服务器的管理压力和维护压力。
本公开的实施例中的Tlog_server和Tlog_agent可以实现双向通信。Tlog_server通过定时接收心跳数据包,监测Tlog_agent是否处于存活状态。Tlog_server采用Nginx搭建的集群模式,可实现动态扩容、缩容,单个节点的Tlog_server出现故障不会影响整个日志信息处理系统的正常运行。
本公开的实施例可以对日志信息进行修改,实现了有效日志信息的采集,减少了无用日志信息的处理,降低了传输日志信息占用的带宽和日志信息的处理资源,节约了日志信息的处理成本。而且,对日志信息进行压缩、加密操作,提高了日志信息的传输速率和安全性。
本公开的实施例中的Tlog_agent的插件可以随时添加、删除、更新、关闭,为日志信息的处理提供了丰富等扩展性。
本公开的实施例中的日志信息处理服务器端模块和日志信息处理客户端模块均可以通过二进制安装包进行部署,不依赖操作系统和第三方环境,部署过程简单。
图5是根据一示例性实施例示出的一种日志信息的处理装置的框图。该处理装置可以应用于日志信息处理服务器,该处理装置可以包括如下单元。
获取单元50,被配置为获取日志信息处理命令;
解析单元51,被配置为对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器;
发送单元52,被配置为发送所述日志信息处理命令至对应的所述应用服务器;
转存单元53,被配置为接收对应的所述应用服务器返回的日志信息处理结果,并将所述日志信息处理结果进行转存,所述日志信息处理结果为对应的所述应用服务器根据所述日志信息处理命令对本地的日志信息进行相关处理所得。
在本公开的一种示例性实施例中,还包括:接收单元54,被配置为在所述发送单元52发送所述日志信息处理命令至对应的所述应用服务器之前,接收来自对应的所述应用服务器的心跳数据包,所述心跳数据包用于保持所述日志信息处理服务器与对应的所述应用服务器之间的长连接,所述心跳数据包携带有对应的所述应用服务器的网络地址。
在本公开的一种示例性实施例中,所述解析单元51,包括:
标识提取单元,被配置为从所述日志信息处理命令中提取得到对应的所述应用服务器的标识信息;
负载确定单元,被配置为根据所述标识信息以及预设的对应关系,确定与所述标识信息对应的负载均衡服务器,所述对应关系表示标识信息与负载均衡服务器之间的对应关系;
服务器确定单元,被配置为将与对应的所述负载均衡服务器通信连接的应用服务器作为对应的所述应用服务器。
在本公开的一种示例性实施例中,所述发送单元52,被配置为将所述日志信息处理命令发送至对应的所述负载均衡服务器,以便对应的所述负载均衡服务器通过所述心跳数据包在对应的所述应用服务器上的发送端口,转发所述日志信息处理命令至对应的所述应用服务器。
在本公开的一种示例性实施例中,所述获取单元50,被配置为通过与所述日志信息处理服务器连接的网页端或应用程序编程接口API接收所述日志信息处理命令,所述日志信息处理命令用于采集、修改或停止采集各所述应用服务器上的日志信息。
在本公开的一种示例性实施例中,所述转存单元53,被配置为将所述日志信息处理结果发送至日志信息订阅服务器,以便所述日志信息订阅服务器根据用户订阅需求存储所述日志信息处理结果至日志信息数据库中。
在本公开的一种示例性实施例中,对应的所述应用服务器上部署有基于二进制安装包进行安装的日志信息处理客户端模块,所述日志信息处理客户端模块用于从所述日志信息处理命令中解析得到对应的插件的符号,根据对应的所述插件的符号确定所述日志信息处理客户端模块上对应的所述插件,并利用对应的所述插件执行日志信息处理命令,以采集得到所述日志信息,对所述日志信息进行加密、压缩得到所述日志信息处理结果。
在本公开的一种示例性实施例中,所述获取单元50,还被配置为获取插件处理命令;
所述解析单元51,还被配置为对所述插件处理命令进行解析,确定与所述插件处理命令对应的日志信息处理客户端模块,并发送所述插件处理命令至对应的所述日志信息处理客户端模块,以便对应的所述日志信息处理客户端模块根据所述插件处理命令对所述插件进行添加、删除、更新、关闭中的任意一项操作。
关于上述实施例中的装置,其中各个单元、各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图6是根据一示例性实施例示出的一种日志信息的处理装置600的框图。例如,装置600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图6,装置600可以包括以下一个或多个组件:处理组件602,存储器604,电力组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。
处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在装置600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为装置600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当装置600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到装置600的打开/关闭状态,组件的相对定位,例如所述组件为装置600的显示器和小键盘,传感器组件614还可以检测装置600或装置600一个组件的位置改变,用户与装置600接触的存在或不存在,装置600方位或加速/减速和装置600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器620执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序产品包括可读性程序代码,该可读性程序代码可由装置600的处理器620执行以完成上述方法。可选地,该程序代码可以存储在装置600的存储介质中,该存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图7是根据一示例性实施例示出的一种用于对日志信息进行处理的装置700的框图。例如,装置700可以被提供为一服务器。参照图7,装置700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述日志信息的处理方法。
装置700还可以包括一个电源组件726被配置为执行装置700的电源管理,一个有线或无线网络接口750被配置为将装置700连接到网络,和一个输入输出(I/O)接口758。装置700可以操作基于存储在存储器732的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种日志信息的处理方法,其特征在于,应用于日志信息处理服务器,所述方法包括:
获取日志信息处理命令;
对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器;
发送所述日志信息处理命令至对应的所述应用服务器;
接收对应的所述应用服务器返回的日志信息处理结果,并将所述日志信息处理结果进行转存,所述日志信息处理结果为对应的所述应用服务器根据所述日志信息处理命令对本地的日志信息进行相关处理所得。
2.根据权利要求1所述的日志信息的处理方法,其特征在于,在所述发送所述日志信息处理命令至对应的所述应用服务器的步骤之前,所述方法还包括:
接收来自对应的所述应用服务器的心跳数据包,所述心跳数据包用于保持所述日志信息处理服务器与对应的所述应用服务器之间的长连接,所述心跳数据包携带有对应的所述应用服务器的网络地址。
3.根据权利要求2所述的日志信息的处理方法,其特征在于,所述对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器的步骤,包括:
从所述日志信息处理命令中提取得到对应的所述应用服务器的标识信息;
根据所述标识信息以及预设的对应关系,确定与所述标识信息对应的负载均衡服务器,所述对应关系表示标识信息与负载均衡服务器之间的对应关系;
将与对应的所述负载均衡服务器通信连接的应用服务器作为对应的所述应用服务器。
4.根据权利要求3所述的日志信息的处理方法,其特征在于,所述发送所述日志信息处理命令至对应的所述应用服务器的步骤,包括:
将所述日志信息处理命令发送至对应的所述负载均衡服务器,以便对应的所述负载均衡服务器通过所述心跳数据包在对应的所述应用服务器上的发送端口,转发所述日志信息处理命令至对应的所述应用服务器。
5.根据权利要求1所述的日志信息的处理方法,其特征在于,所述获取日志信息处理命令的步骤,包括:
通过与所述日志信息处理服务器连接的网页端或应用程序编程接口API接收所述日志信息处理命令,所述日志信息处理命令用于采集、修改或停止采集各所述应用服务器上的日志信息。
6.根据权利要求1所述的日志信息的处理方法,其特征在于,所述将所述日志信息处理结果进行转存的步骤,包括:
将所述日志信息处理结果发送至日志信息订阅服务器,以便所述日志信息订阅服务器根据用户订阅需求存储所述日志信息处理结果至日志信息数据库中。
7.根据权利要求1所述的日志信息的处理方法,其特征在于,对应的所述应用服务器上部署有基于二进制安装包进行安装的日志信息处理客户端模块,所述日志信息处理客户端模块用于从所述日志信息处理命令中解析得到对应的插件的符号,根据对应的所述插件的符号确定所述日志信息处理客户端模块上对应的所述插件,并利用对应的所述插件执行日志信息处理命令,以采集得到所述日志信息,对所述日志信息进行加密、压缩得到所述日志信息处理结果。
8.一种日志信息的处理装置,其特征在于,应用于日志信息处理服务器,所述处理装置包括:
获取单元,被配置为获取日志信息处理命令;
解析单元,被配置为对所述日志信息处理命令进行解析,确定与所述日志信息处理命令对应的应用服务器;
发送单元,被配置为发送所述日志信息处理命令至对应的所述应用服务器;
转存单元,被配置为接收对应的所述应用服务器返回的日志信息处理结果,并将所述日志信息处理结果进行转存,所述日志信息处理结果为对应的所述应用服务器根据所述日志信息处理命令对本地的日志信息进行相关处理所得。
9.一种装置,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的日志信息的处理方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由装置的处理器执行时,使得所述装置能够执行如权利要求1至7中任一项所述的日志信息的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910959319.XA CN110795412B (zh) | 2019-10-10 | 2019-10-10 | 日志信息的处理方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910959319.XA CN110795412B (zh) | 2019-10-10 | 2019-10-10 | 日志信息的处理方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110795412A true CN110795412A (zh) | 2020-02-14 |
CN110795412B CN110795412B (zh) | 2023-01-20 |
Family
ID=69438993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910959319.XA Active CN110795412B (zh) | 2019-10-10 | 2019-10-10 | 日志信息的处理方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110795412B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112751729A (zh) * | 2020-12-30 | 2021-05-04 | 平安证券股份有限公司 | 日志监控方法、装置、介质及电子设备 |
CN113015203A (zh) * | 2021-03-22 | 2021-06-22 | Oppo广东移动通信有限公司 | 信息获取方法、装置、终端、系统及存储介质 |
CN113037828A (zh) * | 2021-03-03 | 2021-06-25 | 浪潮云信息技术股份公司 | 一种云环境下的数据采集与控制方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140108087A1 (en) * | 2012-10-17 | 2014-04-17 | Hitachi Solutions, Ltd. | Log management system and log management method |
CN106550003A (zh) * | 2015-09-23 | 2017-03-29 | 腾讯科技(深圳)有限公司 | 负载均衡的控制方法、装置及系统 |
CN108365971A (zh) * | 2018-01-10 | 2018-08-03 | 深圳市金立通信设备有限公司 | 日志解析方法、设备及计算机可读介质 |
CN109542733A (zh) * | 2018-12-05 | 2019-03-29 | 焦点科技股份有限公司 | 一种高可靠的实时日志收集及可视化检索方法 |
CN109818799A (zh) * | 2019-02-19 | 2019-05-28 | 上海雷腾软件股份有限公司 | 日志采集分析方法及设备 |
-
2019
- 2019-10-10 CN CN201910959319.XA patent/CN110795412B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140108087A1 (en) * | 2012-10-17 | 2014-04-17 | Hitachi Solutions, Ltd. | Log management system and log management method |
CN106550003A (zh) * | 2015-09-23 | 2017-03-29 | 腾讯科技(深圳)有限公司 | 负载均衡的控制方法、装置及系统 |
CN108365971A (zh) * | 2018-01-10 | 2018-08-03 | 深圳市金立通信设备有限公司 | 日志解析方法、设备及计算机可读介质 |
CN109542733A (zh) * | 2018-12-05 | 2019-03-29 | 焦点科技股份有限公司 | 一种高可靠的实时日志收集及可视化检索方法 |
CN109818799A (zh) * | 2019-02-19 | 2019-05-28 | 上海雷腾软件股份有限公司 | 日志采集分析方法及设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112751729A (zh) * | 2020-12-30 | 2021-05-04 | 平安证券股份有限公司 | 日志监控方法、装置、介质及电子设备 |
CN113037828A (zh) * | 2021-03-03 | 2021-06-25 | 浪潮云信息技术股份公司 | 一种云环境下的数据采集与控制方法及系统 |
CN113015203A (zh) * | 2021-03-22 | 2021-06-22 | Oppo广东移动通信有限公司 | 信息获取方法、装置、终端、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110795412B (zh) | 2023-01-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110795412B (zh) | 日志信息的处理方法、装置及存储介质 | |
CN109117361B (zh) | 一种小程序的远程调试方法、相关设备及系统 | |
CN109492073B (zh) | 日志搜索方法、日志搜索装置和计算机可读存储介质 | |
CN112003893B (zh) | 一种资源下载方法和装置 | |
CN111259246A (zh) | 信息推送方法、装置、电子设备及存储介质 | |
CN108989062B (zh) | 更新群成员数据的方法、装置、终端、系统及存储介质 | |
CN112583896B (zh) | 会话管理方法、装置、电子设备、服务器及存储介质 | |
CN112671897A (zh) | 分布式系统的访问方法、装置、存储介质、设备和产品 | |
CN113177093A (zh) | 数据同步方法及装置、电子设备和存储介质 | |
CN112256448A (zh) | 远程控制方法、装置、电子设备、系统及存储介质 | |
CN111385349A (zh) | 通信处理方法、装置、终端、服务器及存储介质 | |
CN104219299B (zh) | 数据传输方法及装置 | |
CN111913756A (zh) | 应用程序的优化方法、装置、系统、电子设备及存储介质 | |
CN111580824A (zh) | 程序优化方法、装置及存储介质 | |
CN109218275B (zh) | 应用交互方法及装置 | |
CN112866222B (zh) | 一种数据处理方法、装置和用于数据处理的装置 | |
CN109766501B (zh) | 爬虫协议管理方法及装置、爬虫系统 | |
CN111049732B (zh) | 推送消息展示方法、装置、电子设备及介质 | |
CN114428737A (zh) | 基于微服务体系的通信方法、装置、设备及存储介质 | |
CN112819061A (zh) | 口令信息识别方法、装置、设备及存储介质 | |
CN110290224B (zh) | 资源上传、转发方法及装置、移动终端、网关和存储介质 | |
US20160119259A1 (en) | Method, terminal device and server for pushing message through light application | |
CN113111123A (zh) | 集群业务的调用方法、装置、电子设备、存储介质及产品 | |
CN112069437A (zh) | 网页请求的处理方法、装置、电子设备和存储介质 | |
CN112256659A (zh) | 日志上报方法、接收方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |