Skip to main content

Choerodon猪齿鱼实践之Webhook配置

· 8 分钟阅读

本文介绍了Choerodon猪齿鱼中配置 Webhook 的方法,帮助大家了解如何将Choerodon平台中各种事件的相关消息推送到钉钉、企业微信或其他支持Webhook的第三方平台或应用,从而使团队协作更加敏捷高效。

功能背景

Webhook是Jeff Lindsay在2007年提出的概念,它是一个web自定义的回调函数,当程序发生特定行为时,会自动回调指定的url。Webhook的回调url可以是第三方平台或应用,也可以是Webhook内的应用。

在Choerodon猪齿鱼中,Webhook扮演了一个跨应用、跨平台传递事件消息通知的角色。用户可以将Choerodon猪齿鱼中发生的事件通过Webhook的方式通知到钉钉、企业微信或其他支持Webhook的第三方平台。

功能使用介绍

Choerodon自V0.20.0之后便支持在“项目层-设置-通知” 中配置钉钉、企业微信与Json类型的Webhook,若想在此版本中配置Webhook,首先需要平台管理员在“平台层-通知-消息服务”菜单下为目标事件配置Webhook的默认模板,之后才能在项目层创建Webhook时选择到这个触发事件。

而在V0.22.0中,Choerodon新增了组织层配置webhook的功能,并支持查看所有Webhook的执行记录。此外,还在平台中为大部分常用触发事件预设了消息模板,避免了平台管理员手动添加消息模板的繁琐操作。下面,我们将以Choerodon V0.22.0项目层(组织层操作相同)Webhook配置的功能为例进行介绍。

创建Webhook

  • 创建钉钉类型的Webhook

若想将Choerodon猪齿鱼中的某些特定事件的消息通知通过webhook发送到钉钉群,首先需要在对应的钉钉群中添加一个自定义类型的群机器人。

完成以上步骤后,在Choerodon猪齿鱼“项目层-通知-Webhook配置”页面,点击顶部操作栏的“创建Webhooks”按钮,右侧会弹出添加Webhook的页面。选择Webhook类型为”钉钉“,将刚添加好的群机器人的密钥与Webhook地址粘入界面中对应的输入框,并在其中勾选对应的触发事件(事件的通知消息模板需在“平台层-通知-消息服务”菜单中进行设置,此处仅会展示出有消息模板的触发事件)。

Webhook创建成功后,已勾选的事件发生时,便会按照消息模板,发送通知到webhook地址,也就是群机器人所在的钉钉群。例:勾选了敏捷通知的“问题已分配”和“问题已解决”后,在这些事件发生后,便会通知到钉钉群,并@出对应的人员。

  • 创建企业微信类型的Webhook

创建企业微信类型的Webhook与钉钉类型的步骤相似,首先也需要在企业微信群中创建一个Webhook群机器人,并复制其Webhook地址备用。

完成上述步骤后,回到Choerodon猪齿鱼“项目层-通知-Webhook配置”页面,点击创建“Webhooks”按钮,选择Webhook类型为”企业微信“,将刚添加好的群机器人的Webhook地址粘入界面中对应的输入框,并在其中勾选对应的触发事件即可。而企业微信类型的Webhook创建成功后,已勾选的事件发生时,便会按照消息模板,发送通知到webhook地址,在这里也就是群机器人所在的企业微信群。

  • 创建Json类型的Webhook

至于Json类型的Webhook,则是用于向支持Webhook的第三方平台或应用发送事件通知。同样也需要指定Webhook地址和密钥,选择触发事件。步骤与钉钉、企业微信类型的Webhook类似。

管理Webhook

Webhooks创建成功之后,会展示在主页的列表之中;通过列表,可以看到Webhook中的触发事件、Webhook地址、Webhook类型以及Webhook状态(包括启用与停用状态)。

项目所有者可在列表中,对所有Webhooks,进行修改、启用/停用、删除的操作;同时,还可以查看某个Webhook的所有历史执行记录及其详情。

查看Webhook执行记录

当列表中的Webhook执行后,会产生对应的执行记录,目前可通过在列表中选择某个Webhook来查看执行记录;或者直接点击顶部的“Webhook执行记录”的按钮,直接查看所有Webhook的执行记录;此外,还可直接点击查看某条执行记录的详情,其中包括:该记录的基本信息以及在发送webhook时的详细日志。

而对于执行失败的Webhook记录,用户可在记录的详情界面中查看错误日志,并能对当前记录执行重试的操作。

总结

Webhook是一种支持跨平台、跨应用发送消息的方式,Choerodon通过配置钉钉、企业微信与Json类型的Webhook,将平台与工具串联起来,以此来实现灵活高效的团队协作。

关于猪齿鱼

Choerodon 猪齿鱼作为全场景效能平台,是基于Kubernetes,Istio,knative,Gitlab,Spring Cloud来实现本地和云端环境的集成,实现企业多云/混合云应用环境的一致性。平台通过提供精益敏捷、持续交付、容器环境、微服务、DevOps等能力来帮助组织团队来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。

更加详细的内容,请参阅Release Notes官网

大家也可以通过以下社区途径了解猪齿鱼的最新动态、产品特性,以及参与社区贡献:

欢迎加入Choerodon猪齿鱼社区,共同为企业数字化服务打造一个开放的生态平台。