CN115617625B - 告警规则配置方法及装置 - Google Patents
告警规则配置方法及装置 Download PDFInfo
- Publication number
- CN115617625B CN115617625B CN202211609716.2A CN202211609716A CN115617625B CN 115617625 B CN115617625 B CN 115617625B CN 202211609716 A CN202211609716 A CN 202211609716A CN 115617625 B CN115617625 B CN 115617625B
- Authority
- CN
- China
- Prior art keywords
- alarm
- configuration
- expression
- sub
- determining
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
- G06F11/3093—Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Alarm Systems (AREA)
Abstract
本申请公开了一种告警规则配置方法及装置。该方法包括:获取目标告警项的多条配置信息,并确定与多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个告警维度的值为空值或者非空值;确定各个配置项中的值为非空值的告警维度的第一数量,并依据各个配置项对应的第一数量从大到小的目标顺序,生成目标告警项的目标矩阵;依据目标顺序依次确定目标矩阵中各个配置项的集合表达式;基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。本申请解决了相关告警技术支持告警维度较少,导致配置项的灵活性较差,且设置与各配置项对应的告警阈值的技术问题。
Description
技术领域
本申请涉及数据库处理技术领域,具体而言,涉及一种告警规则配置方法及装置。
背景技术
告警系统作为信息基础设施中不可或缺的一部分,其主要负责企业中的信息系统出现问题或故障时,及时将故障事件的信息准确地通知给相关技术人员,以保障信息系统运行的安全性。比如说,在监控到数据库系统的性能参数超过阈值后,将阈值参数发送至相关的运维人员。
而随着业务场景朝着复杂化方向发展,往往存在多个数据库,并且不同人员需要管理不同的数据库。但相关告警系统所支持的告警项的维度信息较少,一般为1-2个,从而导致告警项的配置信息的灵活性较差,而且无法为不同维度的配置项设置相应的告警阈值,进而导致告警系统发出的告警信息准确性较差。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种告警规则配置方法及装置,以至少解决相关告警技术支持告警维度较少,导致配置项的灵活性较差,且设置与各配置项对应的告警阈值的技术问题。
根据本申请实施例的一个方面,提供了一种告警规则配置方法,包括:获取目标告警项的多条配置信息,并确定与多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个告警维度的值为空值或者非空值;确定各个配置项中的值为非空值的告警维度的第一数量,并依据各个配置项对应的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵;依据目标顺序依次确定目标矩阵中各个配置项的集合表达式;基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
可选地,确定与多条配置信息对应的多个配置项,包括:对于每个配置项,依据对应的配置信息确定配置项中所有告警维度的值,其中,告警维度的值为空值或者非空值。
可选地,循环执行以下流程:按照目标顺序依次读取目标矩阵中的各个配置项;对于每个配置项,判断配置项中是否包含值为空值的告警维度;在配置项中不包含值为空值的告警维度时,确定配置项中值为非空值的告警维度的第一子表达式,并依据第一子表达式确定配置项的第一集合表达式;在配置项中包含值为空值的告警维度时,确定配置项中值为空值的告警维度的第二子表达式,以及配置项中值为非空值的告警维度的第三子表达式,并依据第二子表达式和第三子表达式,确定配置项的第二集合表达式。
可选地,依据第一子表达式确定配置项的第一集合表达式,包括:将多个第一子表达式做交运算,得到配置项的第一集合表达式。
可选地,确定配置项中值为空值的告警维度的第二子表达式,包括:确定配置项中值为非空值的告警维度的键值信息,并判断目标矩阵中的其他多个配置项中是否包含键值信息;在其他多个配置项中不包含键值信息时,将配置项中的所有告警维度的值做交运算,得到配置项中值为空值的告警维度的第二子表达式;在其他多个配置项中包含键值信息时,确定其他每个配置项中值为非空值的告警维度的第三子表达式,以及其他每个配置项中值为空值的告警维度的第四子表达式,并依据第三子表达式和第四子表达式确定配置项中值为空值的告警维度的第二子表达式。
可选地,判断目标矩阵中的其他多个配置项中是否包含键值信息,包括:若目标矩阵中的其他多个配置项中的告警维度的非空值与键值信息相同时,确定其他多个配置项中包含键值信息;若目标矩阵中的其他多个配置项中的告警维度的非空值与键值信息不相同时,确定其他多个配置项中不包含键值信息。
可选地,依据第三子表达式和第四子表达式确定配置项中值为空值的告警维度的第二子表达式,包括:将其他每个配置项中值为非空值的告警维度的第三子表达式和第四子表达式做交运算,得到第五子表达式;将其他多个配置项对应的第五子表达式做并运算,得到第六子表达式;对第六子表达式做补运算,得到配置项中值为空值的告警维度的第二子表达式。
可选地,在得到配置项中值为空值的告警维度的第二子表达式之后,还包括:采用反演律法则对第二子表达式进行转换。
可选地,依据第二子表达式和第三子表达式,确定配置项的第二集合表达式,包括:将第二子表达式和第三子表达式做交运算,得到配置项的第二集合表达式。
可选地,基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值,包括:分别对第一集合表达式和第二集合表达式中所有运算符号进行替换,得到各个配置项的告警表达式;基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
根据本申请实施例的另一方面,还提供了一种告警规则配置装置,包括:第一确定模块,用于获取目标告警项的多条配置信息,并确定与多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个告警维度的值为空值或者非空值;构建模块,用于确定各个配置项中的值为非空的告警维度的第一数量,并依据各个配置项对应的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵;第二确定模块,用于依据目标顺序依次确定目标矩阵中各个配置项的集合表达式;配置模块,用于基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
根据本申请实施例的另一方面,还提供了一种电子设备,该电子设备包括:存储器和处理器,其中,存储器中存储有计算机程序,处理器被配置为通过计算机程序执行上述的告警规则配置方法。
在本申请实施例中,通过获取目标配置项的多条配置信息,并生成与配置信息对应的多个配置项,实现依据不同告警维度组合不同的配置项,使得告警更加准确和灵活;依据各个配置项中的值为非空的告警维度的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵,并目标顺序依次确定目标矩阵中各个配置项的告警表达式和告警阈值,保证告警对象在触发告警后,只会在一个配置项里触发告警,而不会在其他配置项里触发,实现了配置项之间的互斥性,同时,可以支持任意配置信息,从而有效避免出现漏报警的情况发生,进而解决了相关告警技术支持告警维度较少,导致配置项的灵活性较差,且设置与各配置项对应的告警阈值的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是是根据本申请实施例的一种可选的实现告警规则配置方法的计算机终端的硬件结构图;
图2是根据本申请实施例的一种可选的告警规则配置方法的流程示意图;
图3是根据本申请实施例的一种可选的目标矩阵的示意图;
图4是根据本申请实施例的另一种可选的目标矩阵的示意图;
图5是根据本申请实施例的一种可选的告警规则配置装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了更好地理解本申请实施例,以下将本申请实施例中涉及的技术术语解释如下:
告警项:针对某个事件的一系列配置策略,包括告警对象、告警表达式、告警阈值。
告警对象:指告警任务所监控的主体,用来描述告警项的告警目标,告警对象由若干个维度组成,也即告警对象的格式取决于告警项的维度。一般告警对象可以是一个OB集群、一台机器或者一个服务器。
配置项:根据告警对象维度的不同组合,可以生成不同的配置项。
告警表达式:通常依据告警表达式的值是否达到告警阈值来判定是否触发告警。
告警阈值:通常由不等式和数字组成,告警阈值与告警表达式共同判断告警项是否触发告警。
Prometheus系统:由监控服务、告警服务、时序数据库,以及周边生态的各种指标收集器组成,是当下主流的云原生监控告警系统。该系统是专为监控指标数据设计的高性能时序数据库,因而其具备以下特性:开箱即用的各种服务发现机制,可以自动发现监控端点;具有强大易用的查询语言PromSQL以及丰富的聚合函数;可以配置灵活的告警规则,支持告警收敛、多级路由等高级功能;同时,具有各种现成的开源指标收集器,可以实现自定义监控指标。
实施例1
随着业务场景朝着复杂化方向发展,往往存在多个数据库,并且不同人员需要管理不同的数据库。但相关告警系统所支持的告警项的维度信息较少,一般为1-2个,从而导致告警项的配置信息的灵活性较差,而且无法为不同维度的配置项设置相应的告警阈值,进而导致告警系统发出的告警信息准确性较差。
为了解决该问题,本申请实施例提供了一种告警规则配置方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图1示出了一种用于实现告警规则配置方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为BUS总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为 “数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端10中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的告警规则配置方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的告警规则配置方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端10的用户界面进行交互。
在上述运行环境下,本申请实施例提供了一种告警规则配置方法,如图2所示,该方法至少包括步骤S202-S208,其中:
步骤S202,获取目标告警项的多条配置信息,并确定与多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个告警维度的值为空值或者非空值。
可选地,对于每个配置项,依据对应的配置信息确定配置项中所有告警维度的值。
具体地,当用户对目标告警项进行配置时,可以依据获取的m条配置信息生成对应
的m个配置项。为了方便区分,可以将m个配置项分别记为,其中,下标
为配置项的ID。由于每条配置项中包含目标告警项的告警对象的n个告警维度,可以将n个
告警维度分别记为,其中,下标为告警维度的ID。但每个配置项中对告
警维度的限制情况不一致,因此,将配置项的告警维度的值定义为,当配置项中对
告警维度有限制时,为非空值;反之,则为空值。
步骤S204,确定各个配置项中的值为非空值的告警维度的第一数量,并依据各个配置项对应的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵。
步骤S206,依据目标顺序依次确定目标矩阵中各个配置项的集合表达式。
根据本申请的一个可选的实施例,为了保证存在多个不同配置项时,告警系统对告警项可以实现精准告警,需要确保配置项之间的互斥性和全集性。在本申请实施例中采用循环处理机制执行步骤S1~S4,以确保对目标矩阵中的每一个配置项的所有告警维度进行处理,并得到对应的集合表达式,包括:
步骤S1,按照目标顺序依次读取目标矩阵中的各个配置项。
具体地,按照从上到下的顺序依次读取目标矩阵中的各个配置项。
步骤S2,对于每个配置项,判断配置项中是否包含值为空值的告警维度。
而在配置项中本身有部分告警维度的值为空值时,由于需要使用配置项中的
所有告警维度计算配置项中值为空值的告警维度的表达式,故配置项中一旦存在值为
空值的告警维度,可能会因为信息不足导致无法计算表达式。在这种情况下,需要通过步骤
S4的方法对配置项中存在值为空值的告警维度采用递归处理,得到配置项存在值为空
值的告警维度的表达式。通常,经过有限的递归处理后,配置项中将不存在值为空值的告
警维度,此时就可以计算配置项中值为空值的告警维度的集合表达式。
步骤S3,在配置项中不包含值为空值的告警维度时,确定配置项中值为非空值的告警维度的第一子表达式,并依据第一子表达式确定配置项的第一集合表达式。
具体地,可以将多个第一子表达式做交运算,得到配置项的第一集合表达式。
例如,首先按照从上到下的顺序依次读取矩阵中各个配置项中所有告警维度的
值,针对所有值为非空值的告警维度,如配置项的告警维度的值为非空值,此时可以
确定该配置项中值为非空值的告警维度的第一子表达式为。然后将配置项中
值为非空值的所有告警维度之间做交运算,最终可以配置项在非空维度上的集合表达
式。
步骤S4,在配置项中包含值为空值的告警维度时,确定配置项中值为空值的告警维度的第二子表达式,以及配置项中值为非空值的告警维度的第三子表达式,并依据第二子表达式和第三子表达式,确定配置项的第二集合表达式。
作为一种可选的实施方式,可以通过如下步骤S41-S43确定配置项的第二子表达式:
步骤S41,确定配置项中值为非空值的告警维度的键值信息,并判断目标矩阵中的其他多个配置项中是否包含键值信息。
并在目标矩阵中的其他m-1个配置项中的告警维度的非空值与键值信息不相
同时,确定其他m-1个配置项中不包含键值信息,并通过步骤S42确定配置项中值为空值
的告警维度的第二子表达式;而在目标矩阵中的其他m-1个配置项中的告警维度的非空值
与键值信息相同时,确定其他m-1个配置项中包含键值信息,并通过步骤S43确定配置
项中值为空值的告警维度的第二子表达式。
步骤S42,在其他多个配置项中不包含键值信息时,将配置项中的所有告警维度的值做交运算,得到配置项中值为空值的告警维度的第二子表达式;
步骤S43,在其他多个配置项中包含键值信息时,确定其他每个配置项中值为非空值的告警维度的第三子表达式,以及其他每个配置项中值为空值的告警维度的第四子表达式,并依据第三子表达式和第四子表达式确定配置项中值为空值的告警维度的第二子表达式。
具体地,这些配置项中i1、i2、…、ix等多个告警维度有且只可能由两部分组成,一
个是该配置项本身值为非空值的告警维度,也即配置项中值为非空值的告警维度的
第三子表达式的一部分,可以将其表示为;另一个是该配置本身值为非空值的
告警维度,也即配置项中值为空值的告警维度的第四子表达式。
另外,为了保证第二子表达式中所有的补运算落在每个告警维度ix的值上,
而不是落在多个告警维度ix的运算结果上,还需要采用反演律法则对第二子表达式进
行反复运算,最终,配置项中值为空值的告警维度的第二子表达式可以表示为:
步骤S208,基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
作为一种可选的实施方式,为了将目标矩阵中所有配置项的集合表达式转换为告警系统,如Prometheus系统可以配置的形式,需要分别对第一集合表达式和第二集合表达式中所有运算符号进行替换,以得到各个配置项的告警表达式。
作为本申请一种可选的实施例,通过如下示例对本申请实施例的告警规则配置方法的流程进行解释说明。
具体地,当用户对“表数据量过大”的告警项进行配置时,其告警对象的告警维度有5个,分别为:实例、数据库、schema、所属用户、表名。依据用户配置的3条配置信息,生成对应的3个配置项,分别为:
为了便于后续处理,将配置项中值为非空值的告警维度的数量进行统计,配置项中值为非空值的告警维度为三个,配置项中值为非空值的告警维度为两个,配置项
中值为非空值的告警维度为一个,因此,按照配置项、配置项、配置项的顺序构建
目标矩阵。图4示出了一种可选的目标矩阵得示意图,为了保证存在多个配置项的情况下,
配置项之间严格的互斥性和全集性,按照目标矩阵从上到下的顺序依次处理配置项。
接着,判断其他配置项和是否包含,由于配置项中值为非空值的告警
维度存在和,且非空值和相同,因此,配置项中包含,故。然而
由于存在值为空值的告警维度,且配置项中值为空值的告警维度的第二表达式
已经得出,因此,不需要再次处理。
由于配置项中存在值为空值的告警、和,且,因此,配置
项对应的、和可以分为两部分,一部分为配置项本身值为非空值的告警维
度,并从配置项中值为非空值的告警维度的第一表达式中取出对应部分的表
达式,所以第三表达式可以表示为:
接着,判断其他配置项和是否包含,由于配置项和中值为非空值
的告警维度存在,且非空值和相同,因此配置项和中包含,故。然而由于存在值为空值的告警维度,且配置项和中值为空值的告
警维度的第二表达式和已经得出,因此,不需要再次处理。
由于配置项中存在值为空值的告警维度、、和,且
,因此,对于配置项来说,对应的、、和可以分为两部分,一部分为配置项
本身值为非空值的告警维度和,从配置项中值为非空值的告警维度的第一表达式中取出对应和部分的表达式,所以第三表达式可以表示为:;另一部分属于配置项本身值为非空值的告警维度和,由于和已经处理过,且第四表达式。
对于配置项来说,对应的、、和可以分为两部分,一部分为配置项本身值为非空值的告警维度,从配置项中值为非空值的告警维度的第一表达式中取出对应部分的表达式,所以第三表达式可以表示为:;另一部分属于
配置项本身值为非空值的告警维度、和,由于、和已经处理过,且第
四表达式为: 。
因此,配置项中值为空值的告警维度的第三表达式可以通过将配置项
的两部分做交运算,并将配置项的两部分做交运算,然后再同时做并运算,最后进行补
运算求得,故配置项中值为空值的告警维度的第三表达式可以表示为:
另外,为了保证告警系统在获取数据库的数据之后,可以准确地产生报警信息,还
需要依据配置信息,得到与配置项对应的告警阈值。对于“表数据量过大”的告警项,设定监
控指标为table_size,故这三个配置项对应的prometheus表达式和告警阈值分别为:
table_size{= A1 and = B1 and = E1} > 300MB;
根据最后的告警表达式来看,这三个配置项之间没有交集,故不会同时触发超过一个配置项的告警;同时这三个配置项保证了只要实例为A1,则肯定能触发告警,不会出现漏告警的情况。
在本申请实施例中,通过获取目标配置项的多条配置信息,并生成与配置信息对应的多个配置项,实现依据不同告警维度组合不同的配置项,使得告警更加准确和灵活;依据各个配置项中的值为非空的告警维度的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵,并目标顺序依次确定目标矩阵中各个配置项的告警表达式和告警阈值,保证告警对象在触发告警后,只会在一个配置项里触发告警,而不会在其他配置项里触发,实现了配置项之间的互斥性,同时,该方案可以支持任意配置信息,从而有效避免出现漏报警的情况发生,进而解决了相关告警技术支持告警维度较少,导致配置项的灵活性较差,且设置与各配置项对应的告警阈值的技术问题。
实施例2
根据本申请实施例,还提供了一种用于实现上述告警规则配置方法的告警规则配置装置,如图5所示,该告警规则配置装置中至少包括第一确定模块51,构建模块52,第二确定模块53和配置模块54,其中:
第一确定模块51,用于获取目标告警项的多条配置信息,并确定与多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个告警维度的值为空值或者非空值。
可选地,对于每个配置项,第一确定模块51依据对应的配置信息确定配置项中所有告警维度的值。
具体地,当用户对目标告警项进行配置时,可以依据获取的m条配置信息生成对应
的m个配置项,为了方便区分,可以将m个配置项分别记为,其中,下标
为配置项的ID。由于每条配置项中包含目标告警项的告警对象的n个告警维度,可以将n个
告警维度分别记为,其中,下标为告警维度的ID。但由于每个配置项中
对告警维度的限制情况不一致,因此,将配置项的告警维度的值定义为,当配置项
中对告警维度有限制时,为非空值;反之,则为空值。
构建模块52,用于确定各个配置项中的值为非空的告警维度的第一数量,并依据各个配置项对应的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵。
具体地,构建模块52首先确定目标告警项中每个配置项的所有告警维度的值
为非空值的第一数量,并按照各个配置项对应的第一数量从大到小的顺序,依据配置项和
告警维度生成目标矩阵。第二确定模块53,用于依据目标顺序依次确定目标矩阵中各个配
置项的集合表达式。
根据本申请的一个可选的实施例,为了保证存在多个不同配置项时,告警系统对告警项可以实现精准告警,需要确保配置项之间的互斥性和全集性。在本申请实施例中,第二确定模块53采用循环处理机制执行以下方式,以确保对目标矩阵中的每一个配置项的所有告警维度进行处理,并得到对应的集合表达式,包括:
按照目标顺序依次读取目标矩阵中的各个配置项;对于每个配置项,判断配置项中是否包含值为空值的告警维度;在配置项中不包含值为空值的告警维度时,确定配置项中值为非空值的告警维度的第一子表达式,并将多个第一子表达式做交运算,得到配置项的第一集合表达式;在配置项中包含值为空值的告警维度时,确定配置项中值为空值的告警维度的第二子表达式,以及配置项中值为非空值的告警维度的第三子表达式,并依据第二子表达式和第三子表达式,确定配置项的第二集合表达式。
作为一种可选的实施方式,第二确定模块53还可以通过如下方式确定配置项的第二子表达式:确定配置项中值为非空值的告警维度的键值信息,并判断目标矩阵中的其他多个配置项中是否包含键值信息;在其他多个配置项中不包含键值信息时,将配置项中的所有告警维度的值做交运算,得到配置项中值为空值的告警维度的第二子表达式;在其他多个配置项中包含键值信息时,确定其他每个配置项中值为非空值的告警维度的第三子表达式,以及其他每个配置项中值为空值的告警维度的第四子表达式,并依据第三子表达式和第四子表达式确定配置项中值为空值的告警维度的第二子表达式。
另外,为了保证第二子表达式中所有的补运算落在每个告警维度的值上,而不是落在多个告警维度的运算结果上,还需要采用反演律法则对第二子表达式进行反复运算。
通过上述步骤计算完第二子表达式后,可以将配置项中所有值为非空值的告警维度做交运算,得到第三子表达式。
进一步地,将配置项中值为空值的告警维度的第二子表达式和值为非空值的告警维度的第三子表达式做交运算,得到配置项的第二集合表达式。
配置模块54,用于基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
作为一种可选的实施方式,为了将目标矩阵中所有配置项的集合表达式转换为告警系统,如Prometheus系统可以配置的形式,需要通过配置模块54分别对第一集合表达式和第二集合表达式中所有运算符号进行替换,以得到各个配置项的告警表达式。
需要说明的是,本申请实施例中的告警规则配置装置中的各模块与实施例1中的告警规则配置方法的各实施步骤一一对应,由于实施例1中已经进行了详尽的描述,本实施例中部分未体现的细节可以参考实施例1,在此不再过多赘述。
另外,上述告警规则配置装置中的各个模块可以是程序模块(例如是实现某种特定功能的程序指令集合),也可以是硬件模块,对于后者,其可以表现为以下形式,但不限于此:上述各个模块的表现形式均为一个处理器,或者,上述各个模块的功能通过一个处理器实现。
实施例3
根据本申请实施例,还提供了一种电子设备,该电子设备包括:存储器和处理器,其中,存储器中存储有计算机程序,处理器被配置为通过计算机程序执行实施例1中的告警规则配置方法。
具体地,处理器被配置为通过计算机程序执行实现以下步骤:获取目标告警项的多条配置信息,并确定与多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个告警维度的值为空值或者非空值;确定各个配置项中的值为非空值的告警维度的第一数量,并依据各个配置项对应的第一数量从大到小的目标顺序,构建目标告警项的目标矩阵;依据目标顺序依次确定目标矩阵中各个配置项的集合表达式;基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
可选地,循环执行以下流程:按照目标顺序依次读取目标矩阵中的各个配置项;对于每个配置项,判断配置项中是否包含值为空值的告警维度;在配置项中不包含值为空值的告警维度时,确定配置项中值为非空值的告警维度的第一子表达式,并依据第一子表达式确定配置项的第一集合表达式;在配置项中包含值为空值的告警维度时,确定配置项中值为空值的告警维度的第二子表达式,以及配置项中值为非空值的告警维度的第三子表达式,并依据第二子表达式和第三子表达式,确定配置项的第二集合表达式。
可选地,确定配置项中值为空值的告警维度的第二子表达式,包括:确定配置项中值为非空值的告警维度的键值信息,并判断目标矩阵中的其他多个配置项中是否包含键值信息;在其他多个配置项中不包含键值信息时,将配置项中的所有告警维度的值做交运算,得到配置项中值为空值的告警维度的第二子表达式;在其他多个配置项中包含键值信息时,确定其他每个配置项中值为非空值的告警维度的第三子表达式,以及其他每个配置项中值为空值的告警维度的第四子表达式,并依据第三子表达式和第四子表达式确定配置项中值为空值的告警维度的第二子表达式。
可选地,判断目标矩阵中的其他多个配置项中是否包含键值信息,包括:若目标矩阵中的其他多个配置项中的告警维度的非空值与键值信息相同时,确定其他多个配置项中包含键值信息;若目标矩阵中的其他多个配置项中的告警维度的非空值与键值信息不相同时,确定其他多个配置项中不包含键值信息。
可选地,依据第三子表达式和第四子表达式确定配置项中值为空值的告警维度的第二子表达式,包括:将其他每个配置项中值为非空值的告警维度的第三子表达式和第四子表达式做交运算,得到第五子表达式;将其他多个配置项对应的第五子表达式做并运算,得到第六子表达式;对第六子表达式做补运算,得到配置项中值为空值的告警维度的第二子表达式。
可选地,在得到配置项中值为空值的告警维度的第二子表达式之后,还包括:采用反演律法则对第二子表达式进行转换。
可选地,基于集合表达式,确定目标矩阵中各个配置项的告警表达式,并基于每条配置信息,确定目标矩阵中各个配置项的告警阈值,包括:分别对第一集合表达式和第二集合表达式中所有运算符号进行替换,得到各个配置项的告警表达式;基于每条配置信息,确定目标矩阵中各个配置项的告警阈值。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种告警规则配置方法,其特征在于,包括:
获取目标告警项的多条配置信息,并确定与所述多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个所述告警维度的值为空值或者非空值;
确定各个配置项中的值为非空值的告警维度的第一数量,并依据所述各个配置项对应的第一数量从大到小的目标顺序,构建所述目标告警项的目标矩阵;
依据所述目标顺序依次确定所述目标矩阵中各个配置项的集合表达式;
基于所述集合表达式,确定所述目标矩阵中各个配置项的告警表达式,并基于每条所述配置信息,确定所述目标矩阵中各个配置项的告警阈值;
其中,依据所述目标顺序依次确定所述目标矩阵中各个配置项的集合表达式包括:循环执行以下流程:按照所述目标顺序依次读取所述目标矩阵中的各个配置项;对于每个配置项,判断所述配置项中是否包含值为空值的告警维度;在所述配置项中不包含值为空值的告警维度时,确定所述配置项中值为非空值的告警维度的第一子表达式,并依据所述第一子表达式确定所述配置项的第一集合表达式;在所述配置项中包含值为空值的告警维度时,确定所述配置项中值为空值的告警维度的第二子表达式,以及所述配置项中值为非空值的告警维度的第三子表达式,并依据所述第二子表达式和所述第三子表达式,确定所述配置项的第二集合表达式;
确定所述配置项中值为空值的告警维度的第二子表达式包括:确定所述配置项中值为非空值的告警维度的键值信息,并判断所述目标矩阵中的其他多个配置项中是否包含所述键值信息;在所述其他多个配置项中不包含所述键值信息时,将所述配置项中的所有告警维度的值做交运算,得到所述配置项中值为空值的告警维度的所述第二子表达式;在所述其他多个配置项中包含所述键值信息时,确定其他每个配置项中值为非空值的告警维度的第三子表达式,以及其他每个配置项中值为空值的告警维度的第四子表达式,并依据所述第三子表达式和所述第四子表达式确定所述配置项中值为空值的告警维度的所述第二子表达式。
2.根据权利要求1所述的方法,其特征在于,确定与所述多条配置信息对应的多个配置项,包括:
对于每个所述配置项,依据对应的所述配置信息确定所述配置项中所有告警维度的值,其中,所述告警维度的值为空值或者非空值。
3.根据权利要求1所述的方法,其特征在于,依据所述第一子表达式确定所述配置项的第一集合表达式,包括:
将多个所述第一子表达式做交运算,得到所述配置项的第一集合表达式。
4.根据权利要求1所述的方法,其特征在于,判断所述目标矩阵中的其他多个配置项中是否包含所述键值信息,包括:
若所述目标矩阵中的其他多个配置项中的告警维度的非空值与所述键值信息相同时,确定所述其他多个配置项中包含所述键值信息;
若所述目标矩阵中的其他多个配置项中的告警维度的非空值与所述键值信息不相同时,确定所述其他多个配置项中不包含所述键值信息。
5.根据权利要求1所述的方法,其特征在于,依据所述第三子表达式和所述第四子表达式确定所述配置项中值为空值的告警维度的所述第二子表达式,包括:
将所述其他每个配置项中值为非空值的告警维度的所述第三子表达式和所述第四子表达式做交运算,得到第五子表达式;
将所述其他多个配置项对应的所述第五子表达式做并运算,得到第六子表达式;
对所述第六子表达式做补运算,得到所述配置项中值为空值的告警维度的所述第二子表达式。
6.根据权利要求5所述的方法,其特征在于,在得到所述配置项中值为空值的告警维度的所述第二子表达式之后,所述方法还包括:
采用反演律法则对所述第二子表达式进行转换。
7.根据权利要求1所述的方法,其特征在于,依据所述第二子表达式和所述第三子表达式,确定所述配置项的第二集合表达式,包括:
将所述第二子表达式和所述第三子表达式做交运算,得到所述配置项的第二集合表达式。
8.根据权利要求1所述的方法,其特征在于,基于所述集合表达式,确定所述目标矩阵中各个配置项的告警表达式,并基于每条所述配置信息,确定所述目标矩阵中各个配置项的告警阈值,包括:
分别对所述第一集合表达式和所述第二集合表达式中所有运算符号进行替换,得到所述各个配置项的告警表达式;
基于每条所述配置信息,确定所述目标矩阵中各个配置项的所述告警阈值。
9.一种告警规则配置装置,其特征在于,包括:
第一确定模块,用于获取目标告警项的多条配置信息,并确定与所述多条配置信息对应的多个配置项,其中,每个配置项包括预设的多个告警维度,每个所述告警维度的值为空值或者非空值;
构建模块,用于确定各个配置项中的值为非空的所述告警维度的第一数量,并依据所述各个配置项对应的第一数量从大到小的目标顺序,构建所述目标告警项的目标矩阵;
第二确定模块,用于依据所述目标顺序依次确定所述目标矩阵中各个配置项的集合表达式,其中,所述第二确定模块循环执行以下流程:按照所述目标顺序依次读取所述目标矩阵中的各个配置项;对于每个配置项,判断所述配置项中是否包含值为空值的告警维度;在所述配置项中不包含值为空值的告警维度时,确定所述配置项中值为非空值的告警维度的第一子表达式,并依据所述第一子表达式确定所述配置项的第一集合表达式;在所述配置项中包含值为空值的告警维度时,确定所述配置项中值为空值的告警维度的第二子表达式,以及所述配置项中值为非空值的告警维度的第三子表达式,并依据所述第二子表达式和所述第三子表达式,确定所述配置项的第二集合表达式;其中,确定所述配置项中值为空值的告警维度的第二子表达式包括:确定所述配置项中值为非空值的告警维度的键值信息,并判断所述目标矩阵中的其他多个配置项中是否包含所述键值信息;在所述其他多个配置项中不包含所述键值信息时,将所述配置项中的所有告警维度的值做交运算,得到所述配置项中值为空值的告警维度的所述第二子表达式;在所述其他多个配置项中包含所述键值信息时,确定其他每个配置项中值为非空值的告警维度的第三子表达式,以及其他每个配置项中值为空值的告警维度的第四子表达式,并依据所述第三子表达式和所述第四子表达式确定所述配置项中值为空值的告警维度的所述第二子表达式;
配置模块,用于基于所述集合表达式,确定所述目标矩阵中各个配置项的告警表达式,并基于每条所述配置信息,确定所述目标矩阵中各个配置项的告警阈值。
10.一种电子设备,其特征在于,包括:存储器和处理器,其中,所述存储器中存储有计算机程序,所述处理器被配置为通过所述计算机程序执行权利要求1至8中任意一项所述的告警规则配置方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211609716.2A CN115617625B (zh) | 2022-12-15 | 2022-12-15 | 告警规则配置方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211609716.2A CN115617625B (zh) | 2022-12-15 | 2022-12-15 | 告警规则配置方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115617625A CN115617625A (zh) | 2023-01-17 |
CN115617625B true CN115617625B (zh) | 2023-03-28 |
Family
ID=84880552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211609716.2A Active CN115617625B (zh) | 2022-12-15 | 2022-12-15 | 告警规则配置方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115617625B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102981941B (zh) * | 2012-11-08 | 2016-03-02 | 大唐软件技术股份有限公司 | 一种告警处理方法及告警处理装置 |
CN108491310B (zh) * | 2018-03-26 | 2019-03-29 | 北京九章云极科技有限公司 | 一种日志监测方法及系统 |
CN113825148B (zh) * | 2020-06-18 | 2023-08-18 | 中国移动通信集团浙江有限公司 | 网络节点告警等级的确定方法、装置及计算设备 |
CN112416721B (zh) * | 2020-12-11 | 2022-09-20 | 苏州浪潮智能科技有限公司 | 一种告警处理方法、系统及介质 |
CN114500251A (zh) * | 2022-01-13 | 2022-05-13 | 深圳力维智联技术有限公司 | 系统告警的监测方法、装置、设备以及可读存储介质 |
CN114598601A (zh) * | 2022-03-07 | 2022-06-07 | 浪潮云信息技术股份公司 | 一种容器化环境下基于多个监控指标联合告警的方法及系统 |
-
2022
- 2022-12-15 CN CN202211609716.2A patent/CN115617625B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115617625A (zh) | 2023-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110019876B (zh) | 数据查询方法、电子设备及存储介质 | |
CN111209309B (zh) | 数据流图处理结果确定方法、装置、设备及存储介质 | |
JP2022118108A (ja) | ログ監査方法、装置、電子機器、媒体およびコンピュータプログラム | |
CN109299334B (zh) | 一种知识图谱的数据处理方法及装置 | |
CN104636130B (zh) | 用于生成事件树的方法和系统 | |
CN112988780A (zh) | 数据校核方法和装置、存储介质及电子设备 | |
CN110019713A (zh) | 基于意图理解的数据检索方法和装置、设备及存储介质 | |
CN109753424B (zh) | Ab测试的方法和装置 | |
CN115617625B (zh) | 告警规则配置方法及装置 | |
CN110019400B (zh) | 数据存储方法、电子设备及存储介质 | |
CN107453977A (zh) | 一种会话管理的方法及服务器 | |
CN114172793A (zh) | 一种网络配置知识图谱构建方法及装置 | |
CN110309328B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
US20160217188A1 (en) | Method and device for displaying browser resources and computer readable storage medium | |
CN113986931B (zh) | 报表分页的方法、装置、存储介质及计算设备 | |
CN115442799A (zh) | 号码的查询方法及装置、非易失性存储介质、处理器 | |
CN115718879A (zh) | 数据治理方法、装置以及存储介质 | |
CN111263387B (zh) | 一种无线传感器网络异常处置方法及系统 | |
CN110728138A (zh) | 新闻文本识别的方法、装置以及存储介质 | |
CN109547526B (zh) | 一种消息推送方法、计算机可读存储介质及服务器 | |
CN110913353B (zh) | 短信的分类方法及装置 | |
CN115328892B (zh) | 一种业务表单数据结构处理方法、系统、电子设备及介质 | |
CN109783569A (zh) | 一种基于区块链的账本记录方法、装置及终端设备 | |
CN109005074A (zh) | 网络连接二维码生成方法、网络故障查找方法和装置 | |
CN110417841B (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 |