25.5. 创建自定义通知


您可以在通知表单上 自定义每个 通知类型 的文本内容

流程

  1. 在导航面板中,选择 Automation Execution Administration Notifiers
  2. Create notifier
  3. Type 列表中选择通知类型。
  4. 使用切换启用 自定义消息

  5. 您可以为各种作业事件提供自定义消息,如下所示:

    • 启动消息正文
    • 成功消息正文
    • 错误消息正文
    • 工作流已批准的正文
    • 工作流拒绝消息正文
    • 工作流待处理消息正文
    • 工作流超时消息正文

      消息表单因您要配置的通知类型而异。例如,电子邮件和 PagerDuty 通知的消息显示为典型的电子邮件,其中包含正文和主题,在这种情况下,自动化控制器会将字段显示为 MessageMessage Body。其他通知类型仅针对每种事件要求 消息

      Message 字段预先填充一个模板,其中包含顶层变量,并与属性合并,如 idname模板用大括号括起,可以从自动化控制器提供的固定字段集合中提取,如预先填充的消息字段所示:

      这个预先填充的字段建议通常向接收事件通知的接收者显示信息。您可以根据需要为作业添加自己的属性来自定义这些消息。自定义通知消息使用 Jinja 呈现;Ansible playbook 使用的同一模板引擎。

      消息和消息正文具有不同的内容类型,如下所示:

    • 信息始终只是字符串,仅一行。不支持新行。
    • 消息正文可以是字典或文本块:

      • Webhooks 和 PagerDuty 的消息正文使用字典定义。这些的默认消息正文是 {{ job_metadata }},您可以保留原样的值,或者提供自己的字典。
      • 电子邮件的消息正文使用文本块或多行字符串。默认消息正文为:

        {{ job_friendly_name }} #{{ job.id }} had status {{ job.status }}, view details at {{ url }} {{ job_metadata }}
        Copy to Clipboard Toggle word wrap

        您可以编辑此文本,使 {{ job_metadata }} 留在,或者丢弃 {{ job_metadata }}。由于正文是文本块,它可以是您想要的任何字符串。{{ job_metadata }} 呈现为包含描述正在执行作业的字段的字典。在所有情况下,{{ job_metadata }} 包括以下字段:

        • id
        • name
        • url
        • created_by
        • started
        • finished
        • status
        • 追溯

          您无法查询 {{ job_metadata }} 中的各个字段。当您在通知模板中使用 {{ job_metadata }} 时,所有数据都会被返回。

          生成的字典类似如下:

          {"id": 18,
           "name": "Project - Space Procedures",
           "url": "https://host/#/jobs/project/18",
           "created_by": "admin",
           "started": "2019-10-26T00:20:45.139356+00:00",
           "finished": "2019-10-26T00:20:55.769713+00:00",
           "status": "successful",
           "traceback": ""
          }
          Copy to Clipboard Toggle word wrap

          如果 {{ job_metadata }} 在作业中呈现,它将包括以下附加字段:

        • 清单(inventory)
        • project
        • playbook
        • credential
        • limit
        • extra_vars
        • 主机

          生成的字典类似如下:

          {"id": 12,
           "name": "JobTemplate - Launch Rockets",
           "url": "https://host/#/jobs/playbook/12",
           "created_by": "admin",
           "started": "2019-10-26T00:02:07.943774+00:00",
           "finished": null,
           "status": "running",
           "traceback": "",
           "inventory": "Inventory - Fleet",
           "project": "Project - Space Procedures",
           "playbook": "launch.yml",
           "credential": "Credential - Mission Control",
           "limit": "",
           "extra_vars": "{}",
           "hosts": {}
          }
          Copy to Clipboard Toggle word wrap

          如果 {{ job_metadata }} 在工作流作业中呈现,它将包括以下附加字段:

        • body (此枚举工作流作业中的节点,并包含与每个节点关联的作业描述)

          生成的字典类似如下:

          {"id": 14,
           "name": "Workflow Job Template - Launch Mars Mission",
           "url": "https://host/#/workflows/14",
           "created_by": "admin",
           "started": "2019-10-26T00:11:04.554468+00:00",
           "finished": "2019-10-26T00:11:24.249899+00:00",
           "status": "successful",
           "traceback": "",
           "body": "Workflow job summary:
          
                   node #1 spawns job #15, \"Assemble Fleet JT\", which finished with status successful.
                   node #2 spawns job #16, \"Mission Start approval node\", which finished with status successful.\n
                   node #3 spawns job #17, \"Deploy Fleet\", which finished with status successful."
          }
          Copy to Clipboard Toggle word wrap

如果您创建使用无效语法或引用不可用字段的通知模板,则会显示一条错误消息,指出错误的性质。如果您删除通知的自定义消息,则会在其位置显示默认消息。

重要

如果您在不编辑自定义消息(或编辑并恢复到默认值)的情况下保存通知模板,Details 屏幕会假定默认值,且不会显示自定义消息表。如果您编辑并保存任何值,则整个表会显示在 Details 屏幕中。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat