一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

告警信息的生成方法、相关装置及计算机存储介质与流程

2022-11-19 10:31:58 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,特别涉及一种告警信息的生成方法、相关装置及计算机存储介质。


背景技术:

2.目前,应用监控方式主要是通过监控应用产生的异常信息生成告警,对于应用产生的异常信息的获取通常有两种方式,一种是监控应用所有日志,根据应用提供的告警规则分析日志生成告警信息;另一种是应用主动识别出需要进行告警的日志信息主动推送给告警系统,从而产生告警信息。
3.由于,第一种方案需要分析应用产生的所有日志,开销比较大,现有技术中通常情况下,会采用第二种方案有应用主动识别出需要告警的内容,并将相关内容输出到指定的日志文件由告警代理模块采集或者直接推送给告警系统。
4.但是,第二种方案会存在告警配置依赖外部系统、告警内容不够灵活、告警时效难以把控、告警模板输出固定等问题。十分影响用户体验。


技术实现要素:

5.有鉴于此,本技术提供了一种告警信息的生成方法、相关装置及计算机存储介质,可以有效、灵活地生成告警信息,提升用户体验。
6.本技术第一方面提供了一种告警信息的生成方法,包括:
7.获取当前出现的异常的异常编码;
8.在配置信息集合中,查询得到与所述当前异常编码对应的配置信息;其中,所述配置信息包括错误编码、错误描述以及告警字段;
9.根据所述告警字段,确定当前出现的异常是否需要进行告警;
10.若确定当前出现的异常需要进行告警,则根据所述错误编码确定告警模板;
11.利用所述告警模板和所述错误描述生成告警信息。
12.可选的,所述若确定当前出现的异常需要进行告警,则根据所述错误编码确定告警模板,包括:
13.若确定当前出现的异常需要进行告警,则根据所述错误编码在告警配置模板集合中,查询所述错误编码对应的告警模板;
14.若所述错误代码对应的告警模板为特殊告警模板,则所述利用所述告警模板和所述错误描述生成告警信息,包括:
15.确定并获取所述特殊告警模板中缺少的必要信息;
16.使用所述错误描述中的内容和所述特殊告警模板中缺少的必要信息替换所述特殊告警模板中对应的占位符,从而生成告警信息。
17.可选的,所述告警信息的生成方法,还包括:
18.若所述错误代码对应的告警模板为普通告警模板,则所述利用所述告警模板和所
述错误描述生成告警信息,包括:
19.使用所述错误描述中的内容替换所述普通告警模板中对应的占位符,从而生成告警信息。
20.可选的,所述告警信息的生成方法,还包括:
21.接收变更告警字段请求;其中,所述变更告警字段请求中包括目标配置信息以及变更后的告警字段;
22.将所述目标配置信息中的告警字段修改为所述变更后的告警字段。
23.本技术第二方面提供了一种告警信息的生成装置,包括:
24.获取单元,用于获取当前出现的异常的异常编码;
25.第一查询单元,用于在配置信息集合中,查询得到与所述当前异常编码对应的配置信息;其中,所述配置信息包括错误编码、错误描述以及告警字段;
26.第一确定单元,用于根据所述告警字段,确定当前出现的异常是否需要进行告警;
27.第二确定单元,用于若所述第一确定单元确定当前出现的异常需要进行告警,则根据所述错误编码确定告警模板;
28.生成单元,用于利用所述告警模板和所述错误描述生成告警信息。
29.可选的,所述第二确定单元,包括:
30.第二查询单元,用于若所述第一确定单元确定当前出现的异常需要进行告警,则根据所述错误编码在告警配置模板集合中,查询所述错误编码对应的告警模板;
31.若所述错误代码对应的告警模板为特殊告警模板,则所述生成单元,包括:
32.第三确定单元,用于确定并获取所述特殊告警模板中缺少的必要信息;
33.生成子单元,用于使用所述错误描述中的内容和所述特殊告警模板中缺少的必要信息替换所述特殊告警模板中对应的占位符,从而生成告警信息。
34.可选的,所述告警信息的生成装置,还包括:
35.若所述错误代码对应的告警模板为普通告警模板,则所述生成单元,用于:
36.使用所述错误描述中的内容替换所述普通告警模板中对应的占位符,从而生成告警信息。
37.可选的,所述告警信息的生成装置,还包括:
38.接收单元,用于接收变更告警字段请求;其中,所述变更告警字段请求中包括目标配置信息以及变更后的告警字段;
39.修改单元,用于将所述目标配置信息中的告警字段修改为所述变更后的告警字段。
40.本技术第三方面提供了一种电子设备,包括:
41.一个或多个处理器;
42.存储装置,其上存储有一个或多个程序;
43.当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如第一方面任意一项所述的告警信息的生成方法。
44.本技术第四方面提供了一种计算机存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如第一方面任意一项所述的告警信息的生成方法。
45.由以上方案可知,本技术提供一种告警信息的生成方法、相关装置及计算机存储
介质,所述告警信息的生成方法包括:首先,获取当前出现的异常的异常编码;然后,在配置信息集合中,查询得到与所述当前异常编码对应的配置信息;其中,所述配置信息包括错误编码、错误描述以及告警字段;再根据所述告警字段,确定当前出现的异常是否需要进行告警;若确定当前出现的异常需要进行告警,则根据所述错误编码确定告警模板;最终,利用所述告警模板和所述错误描述生成告警信息。从而可以有效、灵活地生成告警信息,提升用户体验。
附图说明
46.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
47.图1为本技术实施例提供的一种告警信息的生成方法的流程图;
48.图2为本技术另一实施例提供的一种告警信息的生成方法的流程图;
49.图3为本技术另一实施例提供的一种告警信息的生成方法的流程图;
50.图4为本技术另一实施例提供的一种告警信息的生成装置的示意图;
51.图5为本技术另一实施例提供的一种告警信息的生成装置的示意图;
52.图6为本技术另一实施例提供的一种实现告警信息的生成方法的电子设备的示意图。
具体实施方式
53.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
54.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
55.需要注意,本技术中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
56.需要注意,本技术中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
57.本技术实施例提供了一种告警信息的生成方法,如图1所示,具体包括以下步骤:
58.s101、获取当前出现的异常的异常编码。
59.需要说明的是,软件内部在出现异常时,异常位置会抛出异常编码。
60.s102、在配置信息集合中,查询得到与当前异常编码对应的配置信息。
61.其中,配置信息集合中包括至少一个配置信息,配置信息包括错误编码、错误描述以及告警字段。告警字段为提前进行预设的,且是可以进行更改的,此处不做限定。告警字
段用于标识是否需要单独进行告警日志的输出,即每个异常编码都可以通过异常编码对应的配置信息中的告警字段控制,在当前环境中是否作为告警监控的对象。默认情况告警字段标识为关闭,不做告警输出;根据实际情况可以线上标识为开启,将该异常输出到告警日志目录中,进行告警监控。
62.需要说明的是,在本技术的实际应用过程中,可以将异常信息表按照表1的格式进行存储:
[0063][0064]
表1
[0065]
异常信息表在应用启动时加载到内存中,支持线上的重新加载,以便于配置信息的线上更新生效。项目中所产生的异常信息,将异常编码和异常信息都维护在本配置表中,并设置need_alert字段标示是否需要告警输出。
[0066]
s103、根据告警字段,确定当前出现的异常是否需要进行告警。
[0067]
s104、若确定当前出现的异常需要进行告警,则根据错误编码确定告警模板。
[0068]
在本技术的实际应用中,可以为不同的异常设置不同的告警模板,不同的告警模板可以用于区分当前异常的严重程度、紧急程度、应由哪个部门出面进行处理(例如黄色模板代表需要部门a进行处理、黑色模板代表需要部门b进行处理)等,此处不做限定。
[0069]
s105、利用告警模板和错误描述生成告警信息。
[0070]
可选的,在本技术的另一实施例中,告警模板分为特殊告警模板和普通告警模板,因此,告警信息的生成方式的一种实施方式,如图2所示,包括:
[0071]
s201、获取当前出现的异常的异常编码。
[0072]
s202、在配置信息集合中,查询得到与当前异常编码对应的配置信息。
[0073]
其中,配置信息包括错误编码、错误描述以及告警字段。
[0074]
s203、根据告警字段,确定当前出现的异常是否需要进行告警。
[0075]
需要说明的是,步骤s201~s203的具体实现方式可以相应的参见步骤s101~s103的具体实现方式,此处不再赘述。
[0076]
s204、若确定当前出现的异常需要进行告警,则根据错误编码在告警配置模板集合中,查询错误编码对应的告警模板。
[0077]
s205、若错误代码对应的告警模板为特殊告警模板,确定并获取特殊告警模板中缺少的必要信息。
[0078]
例如:特殊告警模板中的告警内容需要输出ip,ip本身不在配置信息中,但是ip正常情况下也是可以获取到的,就可以将该信息补充到告警信息中。
[0079]
s206、使用错误描述中的内容和特殊告警模板中缺少的必要信息替换特殊告警模
板中对应的占位符,从而生成告警信息。
[0080]
具体的,在本技术的实际应用过程中,针对有特殊需求的告警信息格式可以单独配置,以对应的异常编码作为配置编码(key),配置一套特定的输出格式,其中需要动态替换的内容可以通过占位符进行动态替换,支持的替换内容需要提前识别,根据不同的应用系统可以设置自己特殊的替换规则。在代码中提前识别需要占位符动态替换的,存储在一个map当中,在构造告警输出的时候遍历该map中对象,进行动态替换:
[0081][0082]
示例如下(error_code根据实际情况替换):
[0083]
xxx-xx-001_alarm_format=[alarm_other_test]user:%username%;sys:%sysname%。
[0084]
根据上述示例,可以根据实际情况将识别出的用户名称,应用名称在具体告警输
出的时候,根据当时的上下文通过占位符替换,同时保留默认模板中的错误编码和错误信息,替换后的告警信息如下:
[0085]
[alarm_other_test]user:apptest;sys:login;errormsg:test;errorcode:xxx-xx-001。
[0086]
从而实现快速根据告警信息就能识别出产生问题的用户和功能名称,便于快速定位问题。
[0087]
s207、若错误代码对应的告警模板为普通告警模板,使用错误描述中的内容替换普通告警模板中对应的占位符,从而生成告警信息。
[0088]
在本技术的实际应用过程中,可以采用以下格式作为普通告警模板:
[0089]
[alarm_test_error]errormsg:test;errorcode:xxx-xx-001。
[0090]
可选的,在本技术的另一实施例中,告警信息的生成方法的一种实施方式,如图3所示,还包括:
[0091]
s301、接收变更告警字段请求。
[0092]
其中,变更告警字段请求中包括目标配置信息以及变更后的告警字段。
[0093]
s302、将目标配置信息中的告警字段修改为变更后的告警字段。
[0094]
在本技术生成告警信息后,还可以利用告警代理(agent)模块负载将告警信息进行采集分发。需要说明的是,告警代理模块一般由所在公司统一进行配置,告警代理模块根据不同系统的实际情况存在于应用服务器上,如果是应用直接可以推送给告警系统信息,则无需在本地服务器安装agent;如果是输出告警日志到指定目录,由告警系统安装相应的采集agent进行信息收集。
[0095]
可以看出,本技术告警信息的配置方式十分灵活,对于临时增加的个性化告警配置只需要在应用自身系统中即可完成配置,不需要去所属的告警系统专门申请新的配置或者修改规则。
[0096]
并且,告警信息根据程序变更随时动态调整,有些异常信息(编码)在平时并不需要产生告警信息,但是如果当次的程序变更重点关注,比如某个功能相关的异常,或者某个特定异常的修改,这种异常信息在当次的程序变更后需要重点专注一段时间,但是程序运行平稳后即可不做告警。这种类型的告警信息有应用自身控制会更加灵活可控(本技术通过对告警字段进行变更来实现),减少了不必要的跨系统审批流程。
[0097]
在实际维护过程中,会逐步发现部分异常信息产生的告警信息并不足以快速定位问题,需要增加一些额外的辅助信息,例如增加用户,使用系统或者使用环境等信息,这种信息的追加需要原有方式既要修改引用本身告警输出内容,也要修改对应的告警系统上的规则配置,使用本方案只需要在应用本身设置特殊告警模板即可满足需求。
[0098]
还需要说明的是,本方案只是在应用本身的程序中增加一个对于告警输出控制的模块,开发成本较低,同时将异常信息以配置的形式维护起来,既可以便捷的增加告警配置,也便于实现对大部分系统较为混乱的异常管理。
[0099]
由以上方案可知,本技术提供一种告警信息的生成方法:首先,获取当前出现的异常的异常编码;然后,在配置信息集合中,查询得到与当前异常编码对应的配置信息;其中,配置信息包括错误编码、错误描述以及告警字段;再根据告警字段,确定当前出现的异常是否需要进行告警;若确定当前出现的异常需要进行告警,则根据错误编码确定告警模板;最
终,利用告警模板和错误描述生成告警信息。从而可以有效、灵活地生成告警信息,提升用户体验。
[0100]
附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0101]
本技术实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
[0102]
可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如python、java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0103]
本技术的另一实施例提供了一种告警信息的生成装置,如图4所示,具体包括:
[0104]
获取单元401,用于获取当前出现的异常的异常编码。
[0105]
第一查询单元402,用于在配置信息集合中,查询得到与当前异常编码对应的配置信息。
[0106]
其中,配置信息包括错误编码、错误描述以及告警字段。
[0107]
第一确定单元403,用于根据告警字段,确定当前出现的异常是否需要进行告警。
[0108]
第二确定单元404,用于若第一确定单元确定当前出现的异常需要进行告警,则根据错误编码确定告警模板。
[0109]
生成单元405,用于利用告警模板和错误描述生成告警信息。
[0110]
本技术上述实施例公开的单元的具体工作过程,可参见对应的方法实施例内容,如图1所示,此处不再赘述。
[0111]
可选的,在本技术的另一实施例中,第二确定单元404的一种实施方式,包括:
[0112]
第二查询单元,用于若第一确定单元确定当前出现的异常需要进行告警,则根据错误编码在告警配置模板集合中,查询错误编码对应的告警模板。
[0113]
若错误代码对应的告警模板为特殊告警模板,则生成单元405,包括:
[0114]
第三确定单元,用于确定并获取特殊告警模板中缺少的必要信息。
[0115]
生成子单元,用于使用错误描述中的内容和特殊告警模板中缺少的必要信息替换特殊告警模板中对应的占位符,从而生成告警信息。
[0116]
若错误代码对应的告警模板为普通告警模板,则生成单元405,用于:
[0117]
使用错误描述中的内容替换普通告警模板中对应的占位符,从而生成告警信息。
[0118]
本技术上述实施例公开的单元的具体工作过程,可参见对应的方法实施例内容,如图2所示,此处不再赘述。
[0119]
可选的,在本技术的另一实施例中,告警信息的生成装置的一种实施方式,如图5所示,还包括:
[0120]
接收单元501,用于接收变更告警字段请求。
[0121]
其中,变更告警字段请求中包括目标配置信息以及变更后的告警字段。
[0122]
修改单元502,用于将目标配置信息中的告警字段修改为变更后的告警字段。
[0123]
本技术上述实施例公开的单元的具体工作过程,可参见对应的方法实施例内容,如图3所示,此处不再赘述。
[0124]
由以上方案可知,本技术提供一种告警信息的生成装置:首先,获取单元401获取当前出现的异常的异常编码;然后,第一查询单元402在配置信息集合中,查询得到与当前异常编码对应的配置信息;其中,配置信息包括错误编码、错误描述以及告警字段;第一确定单元403根据告警字段,确定当前出现的异常是否需要进行告警;若第一确定单元403确定当前出现的异常需要进行告警,第二确定单元404根据错误编码确定告警模板;最终,生成单元405利用告警模板和错误描述生成告警信息。从而可以有效、灵活地生成告警信息,提升用户体验。
[0125]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
[0126]
本技术另一实施例提供了一种电子设备,如图6所示,包括:
[0127]
一个或多个处理器601。
[0128]
存储装置602,其上存储有一个或多个程序。
[0129]
当一个或多个程序被一个或多个处理器601执行时,使得一个或多个处理器601实现如上述实施例中任意一项的告警信息的生成方法。
[0130]
本技术另一实施例提供了一种计算机存储介质,其上存储有计算机程序,其中,计算机程序被处理器执行时实现如上述实施例中任意一项的告警信息的生成方法。
[0131]
在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0132]
需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于
电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0133]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0134]
本技术另一实施例提供了一种计算机程序产品,当该计算机程序产品被执行时,其用于执行上述任一项的告警信息的生成方法。
[0135]
特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装,或者从rom被安装。在该计算机程序被处理装置执行时,执行本技术实施例的方法中限定的上述功能。
[0136]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
[0137]
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本技术的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0138]
以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术中所涉及的申请范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术中申请的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献