一种通知信息处理方法及装置与流程

文档序号:36011020发布日期:2023-11-17 04:50阅读:34来源:国知局
一种通知信息处理方法及装置与流程

本技术涉及计算机领域,具体而言,涉及一种通知信息处理方法及装置。


背景技术:

1、随着kubernetes从容器编排工具之战中脱颖而出,逐渐被称为容器管理的事实标准。集群的数量和规模随着技术的普及不断增长,如何实现对kubernetes智能监控和告警通知就显得尤为重要。

2、对于kubernetes集群的监控告警,开源社区涌现出了一批优秀的组件,已经能很好地胜任这方面的工作,例如prometheus和victoriametrics等。当产生告警信息后,仍然需要一个组件来对信息进行处理和发送通知,alertmanager已经逐渐成为了这一角色的不二选择。alertmanager负责接收并处理来自prometheus (也可以是其它的客户端程序)的告警信息,它可以对这些告警信息进行进一步的处理,比如对告警消息的分组、去重和抑制。这些预处理完成之后,alertmanager会根据消息的元数据将其路由到匹配的通知方式。alertmanager已经支持了常见的邮件、webhook、slack和hipchat等多种通知方式,允许用户按照自己的使用场景进行配置和高度定制。然而大家使用的通知方式多种多样,配置方法也是灵活多变,在使用过程中还是面临着各种各样的局限性。

3、现有的通知方式在实际使用中,主要存在两个比较制约的地方:第一就是这种通知方式配置和修改比较困难,并且不支持热加载;第二就是这种通知方式无法满足所有的通知需求,并且定制成本较高。这使得它在一些需要通知配置需要灵活修改的大规模场景下,需要重新打造自己的通知系统,否则几乎无法使用。


技术实现思路

1、有鉴于此,本技术的目的在于提供一种通知信息处理方法及装置,实现更加灵活的通知配置,实现了通知配置的热加载,且扩展性强,可以在不改变现有架构的前提下,轻松支持第三方服务器的通知方式。

2、本技术实施例提供的一种通知信息处理方法,所述方法包括:

3、在kubernetes集群中创建参数合法的通知消息的虚拟资源;所述通知消息包括通知消息体和预先配置好的通知策略;所述通知策略包括通知联系对象、通知发送方式和通知模板;

4、根据通知消息中的通知策略查找与通知消息匹配的目标资源;所述目标资源包括以下至少之一:目标通知联系对象、目标通知模板、发送通知时所需的通知服务器;

5、当所述目标资源合法时,根据所述目标通知模板渲染通知消息中的通知消息体,将通知消息体转换为目标格式的目标通知信息;

6、根据目标联系对象和通知消息对应的通知服务器,按照通知消息中的通知发送方式,将目标格式的目标通知信息发送给目标通知联系对象。

7、在一些实施例中,所述的通知信息处理方法中,在kubernetes集群中创建参数合法的通知消息的虚拟资源之前,所述方法还包括:

8、在kubernetes集群中进行通知策略和通知服务器的资源配置操作,以得到配置好的通知策略和通知服务器;所述通知策略和通知服务器和通知消息体相关联;

9、其中,所述资源配置操作包括对通知策略对应资源、通知服务器对应资源的增、删、改、查。

10、在一些实施例中,所述的通知信息处理方法中,在kubernetes集群中进行通知策略和通知服务器的资源配置操作,包括:

11、根据发送通知消息体时要使用的第三方服务器的配置信息,配置通知服务器的原生资源;所述通知消息体是kubernetes集群运行过程中生成的信息;

12、配置通知消息体要发送的通知联系对象;所述通知联系对象包括通知联系人和/或通知联系组;

13、根据用户所需的通知消息体的格式,配置通知消息体对应的通知模板;

14、配置通知消息体关联的通知策略,并关联所述通知联系对象和通知模板,指定发送通知的通知发送方式。

15、在一些实施例中,所述的通知信息处理方法中,配置通知消息体要发送的通知联系对象,包括:

16、根据通知消息体要发送的通知联系人的属性信息,创建通知联系对象中的联系人;

17、根据通知联系人的集合以及该集合中通知联系人的共有属性,创建通知联系对象中的通知联系组。

18、在一些实施例中,所述的通知信息处理方法中,在kubernetes集群中创建参数合法的通知消息的虚拟资源,包括:

19、创建一通知消息的虚拟资源;

20、拦截创建的所述通知消息,判断通知消息的参数是否符合预设通知消息检测规则;其中,预设通知消息检测规则至少包括以下之一:检测用户是否有权限的权限检测规则、检测消息体格式是否合法的消息体检测规范、检测通知消息中的通知策略是否存在的通知策略检测规则;

21、若符合,则创建参数合法的通知消息;

22、若不符合,则返回资源创建失败的报错信息。

23、在一些实施例中,所述的通知信息处理方法中,在kubernetes集群中创建参数合法的通知消息的虚拟资源,包括:

24、获取kubernetes集群运行过程中生成的通知消息体;

25、基于通知消息体的属性信息,确定与通知消息体关联的通知策略;

26、结合所述通知消息体、和所述通知消息体关联的通知策略,创建参数合法的通知消息的虚拟资源。

27、在一些实施例中,所述的通知信息处理方法中,所述根据通知消息中的通知策略查找与通知消息匹配的目标资源,包括:

28、根据所述通知消息中的通知策略,分别查找通知联系对象中的通知联系人、通知联系对象中的通知联系组、通知模板、发送通知时所需的通知服务器的资源,得到通知联系人、通知联系对象中的通知联系组、通知模板的资源查找结果;

29、跳过资源查找结果为不存在的资源,基于资源查找结果为存在的资源确定与通知消息匹配的目标资源。

30、在一些实施例中,所述的通知信息处理方法中,在当所述目标资源合法时,根据所述目标通知模板渲染通知消息中的通知消息体,将通知消息体转换为目标格式的目标通知信息之前,所述方法还包括:

31、判断目标资源是否符合预设资源检测规则;其中,所述预设资源检测规则包括:检测是否有必要资源不存在的第一资源检测规则,和/或检测每种目标资源的配置是否合法的第二资源检测规则;

32、若不符合,则返回虚拟资源创建失败的报错信息;

33、若符合,则确定所述目标资源合法。

34、在一些实施例中,所述的通知信息处理方法中,将目标格式的目标通知信息发送给目标通知联系对象之后,所述方法还包括:

35、基于所述虚拟资源是否创建成功,判断目标格式的目标通知信息是否发送成功;

36、若所述虚拟资源创建失败,则返回资源创建失败的报错信息;

37、若所述虚拟资源创建成功,则确定目标通知信息发送成功。

38、在一些实施例中,还提供一种通知信息处理装置,所述装置包括:

39、创建模块,用于在kubernetes集群中创建参数合法的通知消息的虚拟资源;所述通知消息包括通知消息体和预先配置好的通知策略;所述通知策略包括通知联系对象、通知发送方式和通知模板;

40、查找模块,用于根据通知消息中的通知策略查找与通知消息匹配的目标资源;所述目标资源包括以下至少之一:目标通知联系对象、目标通知模板、发送通知时所需的通知服务器;

41、转换模块,用于当所述目标资源合法时,根据所述目标通知模板渲染通知消息中的通知消息体,将通知消息体转换为目标格式的目标通知信息;

42、发送模块,用于根据目标联系对象和通知消息对应的通知服务器,按照通知消息中的通知发送方式,将目标格式的目标通知信息发送给目标通知联系对象。

43、本技术实施例提供一种通知信息处理方法及装置,所述方法包括:在kubernetes集群中创建参数合法的通知消息的虚拟资源;所述通知消息包括通知消息体和预先配置好的通知策略;所述通知策略包括通知联系对象、通知发送方式和通知模板;根据通知消息中的通知策略查找与通知消息匹配的目标资源;所述目标资源包括以下至少之一:目标通知联系对象、目标通知模板、发送通知时所需的通知服务器;当所述目标资源合法时,根据所述目标通知模板渲染通知消息中的通知消息体,将通知消息体转换为目标格式的目标通知信息;根据目标联系对象和通知消息对应的通知服务器,按照通知消息中的通知发送方式,将目标格式的目标通知信息发送给目标通知联系对象,这样,用户可以用kubernetes原生的方式,对通知相关的资源进行增删改查,就可以修改和配置通知方式;用户可以基于通知消息资源配置的方式进行更加详细的项目隔离和权限控制,实现更加灵活的通知配置,配置热加载且扩展性强;当用户修改通知相关的资源后,发送通知时就能及时感知到,也就实现了通知配置的热加载,所述方法扩展性强,可以在不改变现有架构的前提下,轻松支持其它的通知方式,比如第三方的聊天软件等。

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