使用 IBM Cloud 分发列表管理通知

了解如何在 IBM Cloud 中设置和管理通知分发列表,以便使用电子邮件或网络钩子接收整个账户的事件通知。

您可以使用 IBM Cloud 控制台管理通知分发列表。 您最多可以创建 10 个接收通知的电子邮件地址列表。 添加到分发列表的电子邮件会收到有关影响账户的任何事件的通知。 您必须在账户管理服务中拥有编辑或更高的角色,才能在分发列表中添加电子邮件地址。 更多信息,请参阅 分配账户管理服务访问权限

账户所有者添加到分发列表的电子邮件地址会收到账户所有者 " 通知 "页面上出现的任何事件、维护、公告或安全公告的通知。

除了添加电子邮件地址外,您还可以在分发列表中添加多达 10 个网络钩子。 账户管理员可以创建并使用网络钩子来配置应用程序,以便在平台事件发生时接收异步通知。 已注册的网络钩子会以 HTTP POST 请求的形式将信息发送到指定的 URL,并带有 JSON 有效负载。 请求的内容类型为 application/json

在控制台的通知分发列表中添加电子邮件地址

要将电子邮件添加到通知分发列表,请完成以下步骤:

  1. 使用 IBM Cloud 控制台,转到管理 > 帐户 > 通知分发列表

  2. 选择添加 > 电子邮件

  3. 输入姓名和电子邮件地址。

    您可以在通讯组列表中添加 10 个电子邮件地址。 电子邮件地址不必与 IBM Cloud 中的已知用户相对应,您可以添加任何类型的地址。

  4. 单击添加

取消订阅分发列表

要取消订阅分发列表,请使用分发列表发送的任何电子邮件页脚中的链接。

为通知分发列表启用 Event Notifications

通过 IBM Cloud® Event Notifications,您可以选择将通知发送到不同的目的地,包括电子邮件、短信或网络钩子。Event Notifications 是通知分发列表的替代方案。 它为您提供了一种方法,可以通知您账户中发生的重要事件,并大规模管理您的通知。 更多信息,请参阅 Event Notifications 入门

当 IBM Cloud 平台上发生感兴趣的事件并生成事件时,通知分发列表会与连接的 Event Notifications 实例通信,将通知转发到支持的目的地。 有关支持的 Event Notifications 目的地的更多信息,请参阅 事件目的地

通知事件

下表列出了通知服务发送到 Event Notifications 的事件类型:

通知服务生成的事件
事件名称 事件类型 描述
维护 com.ibm.cloud.notificationapi.maintenance 为使 IBM Cloud 平台和基础设施以最佳状态运行而需要进行的定期维护。
事件 com.ibm.cloud.notificationapi.incident 可能导致故障或限制功能的意外影响事件。
安全公告 com.ibm.cloud.notificationapi.security_bulletins 有关安全漏洞和必需措施的公告。
声明 com.ibm.cloud.notificationapi.announcements IBM Cloud 上有关新基础设施功能和服务的更新。
资源 com.ibm.cloud.notificationapi.resource 资源活动的最新情况。
计费和使用情况 com.ibm.cloud.notificationapi.billing_and_usage 更新计费和使用率。
通知服务生成的子类型事件
事件名称 事件类型 描述
消费提醒(账单和使用情况) com.ibm.cloud.notificationapi.billing_and_usage:spending_alerts 支出警报。

在通知分发列表中添加 Event Notifications 实例

在将任何 Event Notifications 实例添加到通知分发列表之前,请确保已经有一个与分发列表位于同一账户中的 Event Notifications 服务实例。 如果没有 Event Notifications 服务实例,请参阅 Event Notifications 入门。 要将现有 Event Notifications 服务实例添加到通知分发列表,请完成以下步骤:

  1. 使用 IBM Cloud 控制台,转到管理 > 帐户 > 通知分发列表
  2. 单击添加 >。Event Notifications.
  3. 从 Event Notifications 实例列表中选择 Event Notifications 服务实例。 如果没有可以连接到账户的 Event Notifications 服务实例,可以在 IBM Cloud 目录中创建一个。
  4. 单击添加

不能将 Event Notifications 服务实例添加到已配置的通知分发列表中。

向 Event Notifications 实例发送测试通知

将 Event Notifications 实例添加到通知分发列表后,可以对其进行测试,以确保通知服务生成的事件被转发到该实例。

完成以下步骤,向 Event Notifications 实例发送测试通知:

  1. 在 IBM Cloud 控制台中,转到管理 > 帐户 > 通知分发列表
  2. 选择要发送测试通知的 Event Notifications 实例,然后单击操作图标操作 > 测试
  3. 选择要测试的通知事件类型,然后单击发送测试
    1. 要重新发送测试通知,请单击重新发送测试

通知有效载荷详情

当 Event Notifications 实例被添加到账户的分发列表中,且账户收到通知时,通知有效载荷将被发送到该 Event Notifications 实例。 所有事件类型的有效载荷对象属性都相同。 请参阅以下有效载荷示例,其中包含发送测试通知的维护事件的详细信息:

{
   "instanceId": "12345678-abcd-1234-efgh-1234567890ab",
   "id": "CHG1234567",
   "source": "crn:v1:bluemix:public:notificationapi::a/<scope>:12345678-abcd-1234-efgh-1234567890ab::",
   "ibmenseverity": "high_impact",
   "severity": "high_impact",
   "ibmensourceid": "crn:v1:bluemix:public:notificationapi::a/<scope>:12345678-abcd-1234-efgh-1234567890ab::",
   "type": "com.ibm.cloud.notificationapi.maintenance",
   "time": "2025-10-08T18:31:09.363Z",
   "ibmendefaultshort": "Maintenance - High Impact: this is a maintenance test notif",
   "ibmendefaultlong": "this is a maintenance test notif \n \nSource ID: CHG1234567 \nType: Maintenance \nSeverity: High Impact \nStart Time: 23 Oct 2025, 7:09 PM UTC \nEnd Time: 24 Oct 2025, 7:09 PM UTC \nUpdate Time: 21 Oct 2025, 2:52 AM UTC \n\nthis is the body text and sev = 1\n\nThis is a test email, please disregard\n\n\n",
   "ibmensmstext": "Maintenance - High Impact: this is a maintenance test notif \nSource ID: CHG2755299 \nCategory: Maintenance \nSeverity: High Impact \n",
   "ibmensubject": "Maintenance - High Impact: this is a maintenance test notif",
   "ibmenhtmlbody": "<div> this is a maintenance test notif</div></br><div><div><b>Source ID:</b> CHG2755299</div><div><b>Type:</b> Maintenance</div><div><b>Severity:</b> High Impact</div><div><b>Start Time:</b> 23 Oct 2025, 7:09 PM UTC</div><div><b>End Time:</b> 24 Oct 2025, 7:09 PM UTC</div><div><b>Update Time:</b> 21 Oct 2025, 2:52 AM UTC</div></br>this is the body text and sev = 1</br></div><div></br><b>This is a test email, please disregard</b></br><div>",
   "specversion": "1.0",
   "datacontenttype": "application/json",
   "data": {
       "sourceID": "CHG1234567",
       "category": "maintenance",
       "severity": 1,
       "crnMasks": [],
       "startTime": "1761246551",
       "endTime": "1761332951",
       "title": [
           {
               "language": "en",
               "text": "this is a maintenance test notif"
           }
       ],
       "body": [
           {
               "content-type": "text/html",
               "language": "en",
               "text": "this is the body text and sev = 1"
           }
       ]
   }
}

查看下表,了解有关 Event Notifications 通知有效负载属性的更多信息。

有关通知有效载荷属性的详细信息
属性 描述
instanceId source 属性中 Event Notifications 实例的服务实例值。
id 通知 ID。
source 事件发生地来源的标识符。 在这种情况下,notification-api 会将事件触发到特定账户的 Event Notifications 实例。 它由一个唯一的云资源名称 (CRN) 表示,如下所示:
crn:<version>:<cname>:<ctype>:notificationapi:<location>:a/<scope>:<instanceId>::
ibmenseverity 事件的严重程度。 只有维护和事故事件才有非空的严重性值。

维护事件可以有非空值: high_impact, medium_impactlow_impact
事件事件的严重性值不能为空: sev1, sev2, sev3,sev4

severity ibmseverity 属性相同。
type 创建的事件类型。
time 事件发生时的协调世界时 (UTC) 时间戳。
ibmendefaultshort 返回通知的标题和严重程度。
ibmendefaultlong 返回由通知的所有属性组成的单个字符串。
ibmensmstext 返回由标题和这些属性(如果存在)组成的单个字符串:sourceID, component, region, category, severity
ibmensubject 返回通知的标题和严重程度。
ibmenhtmlbody 通知的 HTML 正文。
specversion Event Notifications 支持的 CloudEvents 规范版本。
datacontenttype 数据内容的 MIME 类型。
data 包含通知事件元数据的通知对象。 每种事件类型都有相同的数据属性。 它由 sourceID, category, severity, crnMasks, startTime, endTime, titlebody 组成。

sourceID :一个特殊标识符,包含用于创建通知的系统前缀以及唯一值。 它与有效载荷中的 source 属性无关。
category : 发送通知的类型(与事件名称相同)。
severity : 表示严重程度的数字。 对于维护事件类型,值为 [1,2,3] 中的一个。 对于事件类型,其值为 [1,2,3,4] 中的一个。 对于其他事件类型,值为 "".
crnMasks : 代表受影响服务类型和区域列表(非具体实例)的 CRN 数组。
startTime : 活动的开始时间( Unix )。 只有计费和使用事件类型的值为 "".
endTime : 活动的结束时间( Unix )。 只有计费和使用以及资源事件类型的值为 ""
title : 一系列标题及其相关语言。
body : 包含通知正文的数组,每种可用语言有一个对象。

删除 Event Notifications 实例

您可以通过完成以下步骤删除已添加到通知分发列表的任何 Event Notifications 实例:

  1. 选择要从通知分发列表中删除的 Event Notifications 服务实例,然后单击操作图标操作
  2. 单击删除

在分发列表中添加网络钩子

要在分发列表中添加网络钩子,请完成以下步骤:

  1. 转到 IBM Cloud® 控制台中的管理 > 帐户 > 通知分发列表

  2. 单击添加,然后选择添加网络钩子

  3. 输入 Webhook 的名称标识符和端点 URL,当 Webhook 被触发时,事件通知将发送到该端点。 设置 URL,这将是你自己的自定义端点。

    还可设置自定义标题和安全标题字段。 您可以单击添加标题添加安全标题来指定这些内容。 如果选择为凭据添加安全标头,它们将与私人数据一起加密传输。 这类页眉可以删除,但以后无法编辑。 您以后可以轻松编辑和删除自定义标题。

    如果不想再接收通知,可以点击网络钩子行中的操作图标操作图标 > 删除,轻松从分发列表中删除网络钩子。

    您可以点击控制台中的账户切换器,选择使用哪个 IBM Cloud 账户。 所选账户的用户会收到有关影响该账户的任何事件的通知。

通过网络钩子接收通知时,有效载荷会被发送到指定的网络钩子端点( URL ),并告知您发生事件的所有细节。 请参阅以下示例:

{
  "account_id": "2dd2d2de4add4a098ebd0999be5cc555",
  "body": [
    {
      "language": "en",
      "text": "<p><br />SERVICES/COMPONENTS AFFECTED:<br />- Cloudant NoSQL DB<br />- Code Engine<br />- DNS Services<br />- App ID<br />- IBM Watson Machine Learning<br />- Continuous Delivery - Toolchain<br />- MQ in IBM Cloud<br />- Hyper Protect Crypto Services<br /><br />IMPACT:<br />- Users may experience connectivity issues when trying to connect to Cloudant services.<br /><br />STATUS:<br />- 2021-05-25 14:54 UTC - INVESTIGATING - We are aware of the issue and are currently investigating. More information will be provided as it becomes available.</p>"
    }
  ],
  "category": "Incident",
  "componentNames": "Cloudant",
  "continentNames": [
    "North America",
    "Europe",
    "Asia Pacific"
  ],
  "regionNames": [
    "Washington DC",
    "London",
    "Dallas",
    "Sydney",
    "Tokyo",
    "Frankfurt"
  ],
  "regions": [
    "us-east",
    "eu-gb",
    "us-south",
    "au-syd",
    "jp-tok",
    "eu-de"
  ],
  "severity": "Severity 1",
  "sourceID": "INC3918600",
  "startTime": 1621949594,
  "state": "Investigating",
  "title": [
    {
      "language": "en",
      "text": "INVESTIGATING: IBM Cloudant - selective services  are unavailable"
    }
  ],
  "updateTime": 1621954682
}

您收到的有效载荷带有您在添加网络钩子时在用户界面中配置的标头,以及带有语义版本号的附加版本标头。 该版本标头可用于确定网络钩子有效负载的预期格式。

当前版本标头为 "IBM-Notifications-API-Version": "v2.0.0"

字段值

以下说明提供了有关有效载荷内发送的字段值的信息:

body:该字段描述平台上发生的与您有关的事件。 该字段包含对通知的详细、可读的描述,可长达数个段落。 它还可以包含 html 格式。 该字段的配置可支持更多语言,但目前仅支持英语。

category:事件类型。 这可以是事件、维护、公告或安全公告。

componentNames:如果服务受到影响,则该字段表示该服务。 这也可以是一个全局值,如 Component: IBM Cloud,而不仅仅是一个特定的服务。 请参见 IBM Cloud 目录页面上的服务。

regions:该字段显示事件发生的位置。

severity:该字段指事件的严重程度。 事件的严重程度可以是 1、2、3 或 4,维护的严重程度可以是高、中或低,公告的严重程度可以是大或小。 请参阅以下详细的严重性级别说明:

* **Incidents**
  * `Severity 1`: Business-critical functionality is inoperable or critical interference failed. This severity usually applies to the production environment and the inability to access services is causing a critical impact on operations.
  * `Severity 2`: Core functionality is impacted. Service is operational but causing major impact on usage.
  * `Severity 3`: Partial or noncritical disruption to functionality with minimal or isolated impact.
  * `Severity 4`: A minor issue that requires action, but does not impact functionality or usage.
* **Maintenance**
  * `High impact`: Maintenance will, or is likely to cause service outages and disruptions.
  * `Medium impact`: Maintenance will, or is likely to cause measurable service degradation but not an actual outage.
  * `Low impact`: Maintenance will cause no service disruption during or after the maintenance window.
* **Announcements**
  * `Major`: Important incidents such as legal notices, service deprecation, or security patches.
  * `Minor`: Informative announcements such as product enhancements.

请求有效负载中的严重性属性值可以是 0、1、2、3 或 4。 下表列出了严重性值及其相应的分类:

严重程度及其相应类别
严重性值 事件 维护 声明
0 严重性 4 次要
1 严重性 1 重大
2 严重性 2 次要
3 严重性 3 次要
4 严重性 4 次要

state:该字段仅用于维护和通知。 请参见以下可能的值:

* Values for *Maintenance* states: Planned, In progress, Completed, Canceled, Failed
* Values for *Incident* states: New issue, Investigating, Resolved

title:标题字段告诉您通知的内容。 该字段的配置可支持更多语言,但目前仅支持英语。

startTime, endTime: 您可以查看事件开始和结束的时间。

startTimeendTime 字段以 Unix 协调世界时时间戳显示事件的开始时间和结束时间。

有效载荷中发送的字段可以是必填字段,也可以是可选字段。 如果通知中有此类信息,则会传递可选字段,例如 startTime;如果通知中没有此类信息,则不会传递可选字段。 必填字段,如 category,在任何情况下都会通过。 下表列出了哪些字段是必填字段,哪些是可选字段:

| 字段 | 必填或可选 | 选项 |--|--| |account_id: account_id|Required| | 类别:notification.category |要求 | 标题:notification.title |Required| | 开始时间:notification.startTime |可选 |结束 时间:notification.endTime |可选 |更新 时间:notification.updateTime |可选 |body:notification.body |要求 | 状态:notification.state |可选 |sourceID:notification.sourceID |可选 | 区域:notification.regions | 可选 |continentNames:notification.continentNames|Optional| |区域名称:notification.regionNames|Optional| | 组件名称:notification.componentNames | 可选 |subCategory:notification.subCategory|Optional| | 严重性:notification.severity |可选

今后可能会在不对版本进行重大修改的情况下添加其他字段。 这意味着任何处理通知的代码都应准备好忽略其无法识别的字段。

向网络钩子发送测试通知

如果前面的步骤已经准备就绪,并配置了网络钩子,就可以轻松进行测试了。 向网络钩子发送测试通知,确保网络钩子集成工作正常并能接收到通知。

完成以下步骤,向网络钩子发送测试通知:

  1. 转到 IBM Cloud 控制台中的管理 > 帐户 > 通知分发列表
  2. 选择要发送测试通知的网络钩子,然后单击操作图标操作
  3. 单击测试 > 发送测试
  4. 要重新发送测试通知,请单击重新发送测试

在分发列表中添加 Slack 网络钩子

您可以将 Slack webhooks 添加到您的分发列表,并通过它们接收整个账户的 IBM Cloud 通知。

要创建网络钩子,首先要在 Slack 中设置一个应用程序,然后创建传入网络钩子,它提供了唯一的 URL,您可以在其中以 JSON 有效载荷的形式发送通知消息文本。 您将在安装应用程序的选定 Slack 频道中收到通知。 有关详细信息,请参阅 使用传入 Webhooks 发送信息

要在 IBM Cloud 控制台中添加 Slack webhook,请完成以下步骤:

  1. 转到 IBM Cloud 控制台中的管理 > 帐户 > 通知分发列表
  2. 单击添加,然后选择 Slack
  3. 输入网络钩子的名称和 Slack 网络钩子 URL。 通知会发送到这个唯一的 URL。

在分发列表中添加 Microsoft Teams 网络钩子

在分发列表中添加 Microsoft Teams webhooks 也可用于接收整个账户的 IBM Cloud 通知。

要在 IBM Cloud 控制台中创建网络钩子,首先要在 Microsoft Teams 中创建传入网络钩子。 这允许外部应用程序在 Teams 频道中共享内容,并提供独特的 URL,您可以在这里以 JSON 有效载荷的形式发送通知消息文本。 您会在所选的 Teams 频道中收到通知,您在该频道中添加了传入网络钩子。 更多信息,请参阅 创建传入 Webhook

要在 IBM Cloud 控制台中添加 Microsoft Teams webhook,请完成以下步骤:

  1. 转到 IBM Cloud 控制台中的管理 > 帐户 > 通知分发列表
  2. 单击添加,然后选择 Microsoft Teams.
  3. 输入网络钩子的名称和 Microsoft Teams 网络钩子 URL。 通知会发送到这个唯一的 URL。

设置 ServiceNow 网络钩子

与 Microsoft Teams 和 Slack 网络钩子集成不同,设置 ServiceNow 网络钩子需要在网络钩子目标端进行配置。

首先,您需要在 ServiceNow 网站上创建脚本化 REST API。 配置脚本化 REST API 后,还需要创建脚本化 REST API 资源。 请求方法需设置为 HTTP POST。 然后,您需要提供资源运行的代码。

准备就绪并为脚本化 REST API 创建 URL 后,就可以开始在 IBM Cloud 通知分发列表页面上使用它并创建网络钩子。

要了解 ServiceNow 网络钩子集成的完整过程,请按照 如何将网络钩子集成到 ServiceNow 博文中的说明进行操作。 本博客将为您详细介绍这些步骤。