一种服务器日志管理系统、方法、设备及介质与流程

未命名 07-14 阅读:98 评论:0


1.本发明涉及服务器端日志数据信息技术领域,具体的,本发明应用于智能终端领域,特别是涉及一种服务器日志管理系统、方法、设备及介质。


背景技术:

2.在服务器端,随着处理的业务不断复杂化,服务器端每天产生的日志文件数量也越来越庞大,根本难以维护和管理。而技术人员若要查找生产环境的问题,需要到服务器端的日志文件中根据关键词进行搜索,效率极其低下,生产问题不能得到快速解决。
3.以上服务器端的日志管理方案中,存在如下弊端:第一方面,每天大量的日志数据写入服务器磁盘,大大增加了服务器的内存负载和磁盘的io压力,情况严重时可能导致服务器直接宕机;第二方面,日志文件通常在写入后直接以文本形式储存于服务器磁盘,不方便查阅及维护管理,不能满足智能化的管理要求。
4.综上所述,现有服务器端日志管理方法将日志写入磁盘,严重影响了服务器性能,导致日志查询复杂的同时,增加了服务器的内存负载和磁盘的io压力,降低了日志查询效率,间接影响了运维效率。


技术实现要素:

5.本发明的目的在于,针对现有技术中的上述问题,提供一种服务器日志管理系统、方法、设备及介质,进而解决现有技术中服务器端日志管理方法将日志写入磁盘,严重影响了服务器性能,导致日志查询复杂的同时,增加了服务器的内存负载和磁盘的io压力,降低了日志查询效率,间接影响了运维效率的问题。
6.为解决上述技术问题,本发明的具体技术方案如下:一方面,本发明提供一种服务器日志管理系统,包括:日志采集模块、日志写入模块、日志展示模块和日志集成模块;所述日志采集模块,用于搜集服务器日志数据至队列中间件;所述日志写入模块,用于将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中;所述日志展示模块,用于对所述引擎中间件中的所述服务器日志数据进行检索展示;所述日志集成模块,用于将所述日志采集模块、所述日志写入模块和所述日志展示模块集成至服务器业务系统中。
7.作为一种改进的方案,所述日志采集模块,包括:日志搜集子模块和日志推送子模块;所述日志搜集子模块,用于调用日志搜集组件搜集所述服务器业务系统中的所述服务器日志数据;
所述日志推送子模块,用于设置所述队列中间件,所述日志推送子模块将所述服务器日志数据通过异步方式推送至所述队列中间件中。
8.作为一种改进的方案,所述日志写入模块,包括:日志拉取子模块和日志写入子模块;所述日志拉取子模块,用于将所述队列中间件中的所述服务器日志数据进行拉取,所述日志拉取子模块将拉取出的所述服务器日志数据发送至所述日志写入子模块;所述日志写入子模块,用于设置所述引擎中间件,所述日志写入子模块将收到的所述服务器日志数据批量异步写入至所述引擎中间件中。
9.作为一种改进的方案,所述日志展示模块,包括:前端子模块和后端子模块;所述前端子模块基于vue技术开发;所述后端子模块,用于调用搜索引擎查询所述引擎中间件中所写入的所述服务器日志数据;所述前端子模块,用于展示查询出的所述服务器日志数据。
10.作为一种改进的方案,所述日志集成模块,还用于将所述日志采集模块、所述日志写入模块和所述日志展示模块以无入侵形式集成至所述服务器业务系统中;所述日志集成模块通过修改项目pom文件以及引入所述日志采集模块、所述日志写入模块和所述日志展示模块间的依赖进行所述无入侵形式集成。
11.作为一种改进的方案,所述日志搜集组件,包括:log4j组件、log4j2组件和logback组件;所述队列中间件,包括:redis队列中间件和kafka队列中间件;所述搜索引擎,包括:elasticsearch引擎;所述引擎中间件,包括:elasticsearch中间件。
12.另一方面,本发明还提供一种服务器日志管理方法,包括以下步骤:搜集服务器日志数据至队列中间件;将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中;对所述引擎中间件中的所述服务器日志数据进行检索展示。
13.作为一种改进的方案,所述搜集服务器日志数据至队列中间件,包括:调用日志搜集组件搜集服务器业务系统中的所述服务器日志数据;设置所述队列中间件;将所述服务器日志数据通过异步方式推送至所述队列中间件中。
14.另一方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述服务器日志管理方法的步骤。
15.另一方面,本发明还提供一种计算机设备,所述计算机设备包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;其中:所述存储器,用于存放计算机程序;所述处理器,用于通过运行所述存储器上所存放的程序来执行所述服务器日志管理方法的步骤。
16.本发明技术方案的有益效果是:本发明所述的服务器日志管理系统,可以通过日志采集模块、日志写入模块、日志展示模块和日志集成模块的相互配合,进而实现基于elasticsearch作为查询引擎,实现服务器端日志数据的智能拉取、存储在中间件中,在查询时利用引擎进行高效遍历检索,不对服务器磁盘造成负载压力,同时提升了日志的查询和存储效率,实现业务系统的高吞吐能力,节约了时间成本,利于提升依靠日志所进行的运维效率。
17.本发明所述的服务器日志管理方法,可以对日志采集模块、日志写入模块、日志展示模块和日志集成模块进行有序调用,进而实现基于elasticsearch作为查询引擎,实现服务器端日志数据的智能拉取、存储在中间件中,在查询时利用引擎进行高效遍历检索,不对服务器磁盘造成负载压力,同时提升了日志的查询和存储效率,实现业务系统的高吞吐能力,节约了时间成本,利于提升依靠日志所进行的运维效率。
18.本发明所述的计算机可读存储介质,可以实现引导日志采集模块、日志写入模块、日志展示模块和日志集成模块进行配合,进而实现本发明所述的服务器日志管理方法,且本发明所述的计算机可读存储介质还有效提高所述服务器日志管理方法的可操作性。
19.本发明所述的计算机设备,可以实现存储并执行所述计算机可读存储介质,进而实现本发明所述的服务器日志管理方法。
附图说明
20.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1是本发明实施例1所述服务器日志管理系统的架构示意图;图2是本发明实施例1所述服务器日志管理系统的详细架构示意图;图3是本发明实施例1所述服务器日志管理系统的运行逻辑示意图;图4是本发明实施例2所述服务器日志管理方法的流程示意图;图5是本发明实施例4所述计算机设备的结构示意图;附图中的标记说明如下:1501、处理器;1502、通信接口;1503、存储器;1504、通信总线。
具体实施方式
22.下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
23.在本发明的描述中,需要说明的是,本发明所描述的实施例是本发明一部分实施例,而不是全部的实施例;基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.本文的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本文的实施例能够以除了在这里图示或描述的那些以外的顺
序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
25.本实施例提供一种服务器日志管理系统,如图1~图3所示,包括:日志采集模块、日志写入模块、日志展示模块和日志集成模块;所述日志采集模块,用于搜集服务器日志数据至队列中间件;作为本发明的一种实施方式,所述日志采集模块,包括:日志搜集子模块和日志推送子模块;所述日志搜集子模块,用于调用日志搜集组件搜集所述服务器业务系统中的所述服务器日志数据;所述日志推送子模块,用于设置所述队列中间件,所述日志推送子模块将所述服务器日志数据通过异步方式推送至所述队列中间件中。在本实施方式中,所述日志搜集组件,包括:log4j组件、log4j2组件和logback组件;所述队列中间件,包括:redis队列中间件和kafka队列中间件,在进行实际应用时,日志搜集子模块通过log4j组件、log4j2组件和logback组件等组件进行日志的搜集,日志推送子模块会将搜集到的日志以异步方式推送至redis或kafka队列中间件中,等待后续模块的实时拉取;所述日志写入模块,用于将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中;作为本发明的一种实施方式,所述日志写入模块,包括:日志拉取子模块和日志写入子模块;所述日志拉取子模块,用于将所述队列中间件中的所述服务器日志数据进行拉取,所述日志拉取子模块将拉取出的所述服务器日志数据发送至所述日志写入子模块;所述日志写入子模块,用于设置所述引擎中间件,所述日志写入子模块将收到的所述服务器日志数据批量异步写入至所述引擎中间件中。在本实施方式中,日志写入模块属于本系统的server端,其主要负责将前述推送至redis或kafka队列中间件中的日志数据拉取出,并将其批量的异步写入到elasticsearch中间件中;而依赖于redis、kafka及elasticsearch的高吞吐特性,日志读取及写入的速度非常之快,极大的提高了日志数据的读写效率;所述日志展示模块,用于对所述引擎中间件中的所述服务器日志数据进行检索展示;作为本发明的一种实施方式,所述日志展示模块,包括:前端子模块和后端子模块;所述前端子模块基于vue技术开发;所述后端子模块,用于调用搜索引擎查询所述引擎中间件中所写入的所述服务器日志数据;所述前端子模块,用于展示查询出的所述服务器日志数据。本实施方式中,日志展示模块属于本系统的查询展示交互端,其通过elasticsearch进行elasticsearch中间件中写入日志数据的高效查询,同时前端子模块配置有直观形象的检索查询界面,能够帮助操
作者简单方便的进行数据查询,提高查询检索效率;所述日志集成模块,用于将所述日志采集模块、所述日志写入模块和所述日志展示模块集成至服务器业务系统中;作为本发明的一种实施方式,所述日志集成模块,还用于将所述日志采集模块、所述日志写入模块和所述日志展示模块以无入侵形式集成至所述服务器业务系统中;所述日志集成模块通过修改项目pom文件以及引入所述日志采集模块、所述日志写入模块和所述日志展示模块间的依赖进行所述无入侵形式集成。在本实施方式中,通过日志集成模块实现前述三个模块对于服务器业务系统内的集成,在实际操作中只需修改项目pom文件且直接引入上述依赖即可,通过本系统的集成应用,替代了传统方法以及纯文本式的日志写入磁盘存储的形式,服务器端的日志数据能够基于elasticsearch作为查询引擎,实现高吞吐以及高查询效率和低负载。
26.作为本发明的一种实施方式,所述日志搜集组件,包括:log4j组件、log4j2组件和logback组件;所述队列中间件,包括:redis队列中间件和kafka队列中间件;所述搜索引擎,包括:elasticsearch引擎;所述引擎中间件,包括:elasticsearch中间件。
实施例2
27.本实施例基于与实施例1中所述的一种服务器日志管理系统相同的发明构思,提供一种服务器日志管理方法,如图4所示,包括以下步骤:s100、搜集服务器日志数据至队列中间件;作为本发明的一种实施方式,所述搜集服务器日志数据至队列中间件,包括:调用日志搜集组件搜集服务器业务系统中的所述服务器日志数据;设置所述队列中间件;将所述服务器日志数据通过异步方式推送至所述队列中间件中。
28.s200、将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中;作为本发明的一种实施方式,所述将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中,包括:将所述队列中间件中的所述服务器日志数据进行拉取,设置所述引擎中间件,将收到的所述服务器日志数据批量异步写入至所述引擎中间件中。
29.s300、对所述引擎中间件中的所述服务器日志数据进行检索展示;作为本发明的一种实施方式,所述对所述引擎中间件中的所述服务器日志数据进行检索展示,包括:调用搜索引擎查询所述引擎中间件中所写入的所述服务器日志数据;展示查询出的所述服务器日志数据;作为本发明的一种实施方式,所述日志搜集组件,包括:log4j组件、log4j2组件和logback组件;所述队列中间件,包括:redis队列中间件和kafka队列中间件;所述搜索引擎,包括:elasticsearch引擎;所述引擎中间件,包括:elasticsearch中间件。
实施例3
30.本实施例提供一种计算机可读存储介质,包括:所述存储介质用于储存将上述实施例2所述的服务器日志管理方法实现所用的计算机软件指令,其包含用于执行上述为所述服务器日志管理方法所设置的程序;具体的,该可执行程序可以内置在实施例1所述的服务器日志管理系统中,这样,服务器日志管理系统
就可以通过执行内置的可执行程序实现所述实施例2所述的服务器日志管理方法。
31.此外,本实施例具有的计算机可读存储介质可以采用一个或多个可读存储介质的任意组合,其中,可读存储介质包括电、光、电磁、红外线或半导体的系统、装置或器件,或者以上任意组合。
实施例4
32.本实施例提供一种电子设备,如图5所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
33.存储器1503,用于存放计算机程序;处理器1501,用于执行存储器1503上所存放的计算机程序时,实现上述实施例1中所述服务器日志管理方法的步骤。
34.作为本发明的一种实施方式,上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
35.作为本发明的一种实施方式,通信接口用于上述终端与其他设备之间的通信。
36.作为本发明的一种实施方式,存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
37.作为本发明的一种实施方式,上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
38.区别于现有技术,采用本技术一种服务器日志管理系统、方法、设备及介质,可以基于elasticsearch作为查询引擎,实现服务器端日志数据的智能拉取、存储在中间件中,在查询时利用引擎进行高效遍历检索,不对服务器磁盘造成负载压力,同时提升了日志的查询和存储效率,实现业务系统的高吞吐能力,节约了时间成本,利于提升依靠日志所进行的运维效率。
39.应理解,在本文的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本文实施例的实施过程构成任何限定。
40.还应理解,在本文实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
41.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单
元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本文的范围。
42.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
43.在本文所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
44.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本文实施例方案的目的。
45.另外,在本文各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
46.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本文的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本文各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
47.以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

技术特征:
1.一种服务器日志管理系统,其特征在于,包括:日志采集模块、日志写入模块、日志展示模块和日志集成模块;所述日志采集模块,用于搜集服务器日志数据至队列中间件;所述日志写入模块,用于将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中;所述日志展示模块,用于对所述引擎中间件中的所述服务器日志数据进行检索展示;所述日志集成模块,用于将所述日志采集模块、所述日志写入模块和所述日志展示模块集成至服务器业务系统中。2.根据权利要求1所述的一种服务器日志管理系统,其特征在于:所述日志采集模块,包括:日志搜集子模块和日志推送子模块;所述日志搜集子模块,用于调用日志搜集组件搜集所述服务器业务系统中的所述服务器日志数据;所述日志推送子模块,用于设置所述队列中间件,所述日志推送子模块将所述服务器日志数据通过异步方式推送至所述队列中间件中。3.根据权利要求1所述的一种服务器日志管理系统,其特征在于:所述日志写入模块,包括:日志拉取子模块和日志写入子模块;所述日志拉取子模块,用于将所述队列中间件中的所述服务器日志数据进行拉取,所述日志拉取子模块将拉取出的所述服务器日志数据发送至所述日志写入子模块;所述日志写入子模块,用于设置所述引擎中间件,所述日志写入子模块将收到的所述服务器日志数据批量异步写入至所述引擎中间件中。4.根据权利要求2所述的一种服务器日志管理系统,其特征在于:所述日志展示模块,包括:前端子模块和后端子模块;所述前端子模块基于vue技术开发;所述后端子模块,用于调用搜索引擎查询所述引擎中间件中所写入的所述服务器日志数据;所述前端子模块,用于展示查询出的所述服务器日志数据。5.根据权利要求1所述的一种服务器日志管理系统,其特征在于:所述日志集成模块,还用于将所述日志采集模块、所述日志写入模块和所述日志展示模块以无入侵形式集成至所述服务器业务系统中;所述日志集成模块通过修改项目pom文件以及引入所述日志采集模块、所述日志写入模块和所述日志展示模块间的依赖进行所述无入侵形式集成。6.根据权利要求4所述的一种服务器日志管理系统,其特征在于:所述日志搜集组件,包括:log4j组件、log4j2组件和logback组件;所述队列中间件,包括:redis队列中间件和kafka队列中间件;所述搜索引擎,包括:elasticsearch引擎;所述引擎中间件,包括:elasticsearch中间件。7.一种服务器日志管理方法,其特征在于,包括以下步骤:搜集服务器日志数据至队列中间件;将所述队列中间件内的所述服务器日志数据拉取至引擎中间件中;
对所述引擎中间件中的所述服务器日志数据进行检索展示。8.根据权利要求7所述的一种服务器日志管理方法,其特征在于:所述搜集服务器日志数据至队列中间件,包括:调用日志搜集组件搜集服务器业务系统中的所述服务器日志数据;设置所述队列中间件;将所述服务器日志数据通过异步方式推送至所述队列中间件中。9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现权利要求8中所述服务器日志管理方法的步骤。10.一种计算机设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器,所述通信接口,所述存储器通过所述通信总线完成相互间的通信;其中:所述存储器,用于存放计算机程序;所述处理器,用于通过运行所述存储器上所存放的程序来执行权利要求8中所述服务器日志管理方法的步骤。

技术总结
本发明公开了一种服务器日志管理系统、方法、设备及介质,所述系统包括:日志采集模块、日志写入模块、日志展示模块和日志集成模块;日志采集模块用于搜集服务器日志数据至队列中间件;日志写入模块将队列中间件内的服务器日志数据拉取至引擎中间件中;日志展示模块用于对引擎中间件中的服务器日志数据进行检索展示;日志集成模块用于将日志采集模块、日志写入模块和日志展示模块集成至服务器业务系统中;本发明能够基于ElasticSearch作为查询引擎,在查询时利用引擎进行高效遍历检索,不对服务器磁盘造成负载压力,同时提升了日志的查询和存储效率,实现业务系统的高吞吐能力,节约了时间成本。节约了时间成本。节约了时间成本。


技术研发人员:胡焱 赵宝亮 安静 马伟
受保护的技术使用者:浪潮金融信息技术有限公司
技术研发日:2023.03.23
技术公布日:2023/7/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐