运行程序的日志监控系统、方法、介质及设备与流程

文档序号:18464557发布日期:2019-08-17 02:20阅读:150来源:国知局
运行程序的日志监控系统、方法、介质及设备与流程

本发明涉及数据监控技术领域,特别涉及一种运行程序的日志监控系统、方法、介质及设备。



背景技术:

随着互联网技术的蓬勃发展,越来越多公司意识到程序运行稳定的重要性;而为了确保程序运行的稳定性,在程序运行过程中对日志进行监控以判断程序是否正常运行成为确保程序稳定性的重要手段之一。

在对日志进行监控的过程中,所需要监控的日志往往是海量的、数据结构各异的,并且,这些日志往往存储在不同的存储引擎中。

然而,在现有的日志监控系统中,均只能同时监控一种结构的日志,难以对不同结构的日志进行兼容监控,并且,现有的日志监控系统配置过程较为复杂,其学习成本较高,缺乏经验和相关知识的使用者难以有效地使用日志监控系统完成日志的监控。



技术实现要素:

本发明旨在至少在一定程度上解决上述技术中的技术问题之一。为此,本发明的一个目的在于提出一种运行程序的日志监控系统,能够实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

本发明的第二个目的在于提出一种运行程序的日志监控方法。

本发明的第三个目的在于提出一种计算机可读存储介质。

本发明的第四个目的在于提出一种计算机设备。

为达到上述目的,本发明第一方面实施例提出了一种运行程序的日志监控系统,包括:指令接收模块,用于接收用户的配置指令;配置模块,用于根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;监控模块,用于将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;报警模块,用于根据报警指令发出报警信息。

根据本发明实施例的运行程序的日志监控系统,设置指令接收模块接收用户的配置指令;以便配置模块根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;设置监控模块将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;以便报警模块根据报警指令发出报警信息;从而实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

另外,根据本发明上述实施例提出的运行程序的日志监控系统还可以具有如下附加的技术特征:

可选地,所述配置模块在配置好所述监控任务后,还通过所述监控模块将所述监控任务注册到zookeeper节点,并通过所述监控模块对所述zookeeper节点进行监听以获取所述监控任务并加载运行,以实现对所述监控任务进行分布式部署。

可选地,每个查询指令配置为json格式,以便所述数据查询层将json格式的查询指令转化为对应数据存储引擎的查询语句。

可选地,所述监控模块还用于将所述报警规则转化成lambda表达式,并通过ast抽象树算法将所述lambda表达式的字符串格式解析成计算机可识别的程序逻辑,以对多种数据结果进行匹配计算,以及根据匹配计算结果判断是否生成所述报警指令。

为达到上述目的,本发明第二方面实施例提出了一种运行程序的日志监控方法,包括以下步骤:接收用户的配置指令;根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;根据报警指令发出报警信息。

根据本发明实施例的运行程序的日志监控方法,首先,接收用户的配置指令;接着,根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;然后,将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;接着,根据报警指令发出报警信息;从而实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

另外,根据本发明上述实施例提出的运行程序的日志监控方法还可以具有如下附加的技术特征:

可选地,在配置好所述监控任务后,还将所述监控任务注册到zookeeper节点,并对所述zookeeper节点进行监听以获取所述监控任务并加载运行,以实现对所述监控任务进行分布式部署。

可选地,每个查询指令配置为json格式,以便所述数据查询层将json格式的查询指令转化为对应数据存储引擎的查询语句。

可选地,根据所述报警规则对多种数据结果进行综合判断以生成报警指令,包括:将所述报警规则转化成lambda表达式,并通过ast抽象树算法将所述lambda表达式的字符串格式解析成计算机可识别的程序逻辑,以对多种数据结果进行匹配计算;根据匹配计算结果判断是否生成所述报警指令。

为了达到上述目的,本发明实施例还提出了一种计算机可读存储介质,其上存储有运行程序的日志监控程序,该运行程序的日志监控程序被处理器执行时实现如上述的运行程序的日志监控方法。

根据本发明实施例的计算机可读存储介质,通过存储运行程序的日志监控程序,这样运行程序的日志监控程序在被处理器执行时实现如上述的运行程序的日志监控方法,来实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

为了达到上述目的,本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如上述的运行程序的日志监控方法。

根据本发明实施例的计算机设备,通过处理器执行上述运行程序的日志监控程序,来实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

附图说明

图1为根据本发明实施例的运行程序的日志监控系统的方框示意图;

图2为根据本发明实施例的运行程序的日志监控方法的流程示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

现有的日志监控系统难以对不同结构的日志进行兼容监控,并且,日志监控系统配置过程较为复杂,初学者难以有效地使用日志监控系统达成对日志的有效监控,根据本发明实施例的运行程序的日志监控系统,设置指令接收模块接收用户的配置指令;以便配置模块根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;设置监控模块将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;以便报警模块根据报警指令发出报警信息;从而实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

图1为根据本发明实施例的运行程序的日志监控系统的方框示意图,如图1所示,该运行程序的日志监控系统包括:指令接收模块10、配置模块20、监控模块30和报警模块40。

其中,指令接收模块10,用于接收用户的配置指令。

也就是说,设置指令接收模块10对用户的配置指令进行接收。

配置模块20,用于根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;

也就是说,通过配置模块20根据接收到的配置指令进行监控任务的配置,其中,监控任务包括与数据结构一一对应的多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;从而,可以通过查询指令的选择来确定需要监控的数据结构的类型。

其中,数据结构可以有多种,例如,对应elasticsearch、influxdb、druid和prometheus等数据存储引擎的数据结构,在此不对数据的结构形式进行限定。

作为一种示例,首先,设置配置指令操作界面,并将配置指令操作界面发送至用户端,以便用户通过指令操作界面进行选择以确定配置指令;具体地,可获取用户选择的聚合字段类别、报警规则(例如,满足单一条件报警或者同时满足多个条件报警、日志过滤条件、查询日志时限、对比形式等),以完成配置指令的获取;从而,用户在进行指令配置的过程中,只需要简单地进行日志数据指标的选择即可完成配置指令的发送,极大地简化了用户使用日志监控系统过程中指令配置的难度。

监控模块30,用于将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令,从而,完成根据多个查询指令进行多种数据结构统一查询,完成对多种数据机构日志的兼容监控;

其中,查询指令的配置方式可以有多种。

作为一种示例,每个查询指令配置为json格式,以便后续数据查询层将json格式的查询指令转化为对应数据存储引擎的查询语句。

作为一种示例,当监控模块30接收到查询指令之后,将查询指令配置为json格式,并将json格式的查询指令下发到数据查询层,数据查询层在接收到json格式的查询指令之后,将json格式的查询指令转化为对应数据存储引擎数据结构的查询语句,然后,根据转化之后的查询语句对相应的数据存储引擎进行查询,以调用各数据查询层查询到的数据结果,并根据调用到的数据结果和配置好的报警规则进行综合判断,以判断当前获取到的数据结果是否达到了报警阈值,并在当前获取到的数据结果达到报警阈值时生成报警指令。

在一些实施例中,为了提高本发明实施例提出的运行程序的日志监控系统的可用性,使其更加适用于分布式部署,在该运行程序的日志监控系统中,配置模块20在配置好监控任务后,还通过监控模块30将监控任务注册到zookeeper节点,并通过监控模块30对zookeeper节点进行监听以获取监控任务并加载运行,以实现对监控任务进行分布式部署。

作为一种示例,在接收到用户的配置指令之后,通过配置模块20根据配置指令进行监控任务配置,然后,监控任务配置成功后,分布式的监控模块30将监控任务注册到zookeeper节点,同时,每个监控模块30还对zookeeper节点进行监听以获取zookeeper节点的变化,当监听获知zookeeper节点有信息变化时,获取更新的监控任务,并对监控任务进行加载和运行,以实现对监控任务进行分布式部署。

在一些实施例中,监控模块还用于将报警规则转化成lambda表达式,并通过ast抽象树算法将lambda表达式的字符串格式解析成计算机可识别的程序逻辑,以对多种数据结果进行匹配计算,以及根据匹配计算结果判断是否生成报警指令。

报警模块40,用于根据报警指令发出报警信息。

综上所述,根据本发明实施例的运行程序的日志监控系统,设置指令接收模块接收用户的配置指令;以便配置模块根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;设置监控模块将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;以便报警模块根据报警指令发出报警信息;从而实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

为了实现上述实施例,如图2所示,本发明实施例还提出了一种运行程序的日志监控方法,该运行程序的日志监控方法包括以下步骤:

s101,接收用户的配置指令。

s102,根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构。

即言,根据接收到的用户的配置指令进行监控任务的配置,以通过监控任务中的多个查询指令进行待查询数据对应的数据结构的确定。

s103,将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令。

即言,在监控任务配置完成之后,将其中的多个查询指令下发到数据查询层,以便数据查询层根据接收到的多个查询指令对相应的数据存储引擎进行查询,然后,调用查询到的多种数据结果,并根据配置好的报警规则对调取到的多种数据结果进行综合判断以判断当前调取到的多种数据结果是否达到报警条件,如果是,则生成报警指令。

在一些实施例中,为了提高本发明实施例提出的运行程序的日志监控方法的可用性,使其有利于分布式部署,在配置好监控任务之后,该运行程序的日志监控方法还将监控任务注册到zookeeper节点,并对zookeeper节点进行监听以获取监控任务并加载运行,以实现对监控任务进行分布式部署;从而,可以达成分布式部署,增强运行程序的日志监控方法的可用性。

其中,查询指令的配置方式可以有多种。

作为一种示例,每个查询指令配置为json格式,以便数据查询层将json格式的查询指令转化为对应数据存储引擎的查询语句。

在一些实施例中,根据报警规则对多种数据结果进行综合判断以生成报警指令具体可以包括:

将报警规则转化成lambda表达式,并通过ast抽象树算法将lambda表达式的字符串格式解析成计算机可识别的程序逻辑,以对多种数据结果进行匹配计算;

根据匹配计算结果判断是否生成报警指令。

s104,根据报警指令发出报警信息。

需要说明的是,上述关于图1中运行程序的日志监控系统的描述同样适用于该运行程序的日志监控方法,在此不做赘述。

综上所述,根据本发明实施例的运行程序的日志监控方法,首先,接收用户的配置指令;接着,根据配置指令进行监控任务配置,其中,监控任务包括多个查询指令和配置好的报警规则,每个查询指令对应一种数据结构;然后,将多个查询指令下发到数据查询层,以通过数据查询层对每种数据存储引擎进行查询,并调用数据查询层查询到的多种数据结果,以及根据报警规则对多种数据结果进行综合判断以生成报警指令;接着,根据报警指令发出报警信息;从而实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

为了达到上述实施例,本发明实施例还提出了一种计算机可读存储介质,其上存储有运行程序的日志监控程序,该运行程序的日志监控程序被处理器执行时实现如上述的运行程序的日志监控方法。

根据本发明实施例的计算机可读存储介质,通过存储运行程序的日志监控程序,这样运行程序的日志监控程序在被处理器执行时实现如上述的运行程序的日志监控方法,来实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

为了达到上述实施例,本发明实施例还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,实现如上述的运行程序的日志监控方法。

根据本发明实施例的计算机设备,通过处理器执行上述运行程序的日志监控程序,来实现对多种结构的日志进行兼容监控,同时,监控任务配置简便,降低了用户使用难度。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不应理解为必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1