两次查看仪表板之间,失败很容易被遗漏
作业可能在无人关注时失败。反复查看仪表板很耗时,而将所有结果发到聊天频道又会造成噪音。
发送团队需要的事件
选择渠道,并从告警中直接打开任务。
连接渠道、选择事件,并为各个作业配置通知路由
启用共享服务器渠道,或创建具有独立通知目标和凭据引用的命名项目告警。
选择每个项目告警发送的任务事件,例如失败或等待确认事件。
使用项目默认设置,或为模板选择自定义告警集合。计划可以继承或覆盖该选择。
使用团队已在关注的渠道
选择任务告警的发送目标,以及各目标接收的事件。
从告警进入下一步操作
减少例行噪音,发送有用告警
跨作业重用通知目标
为 Slack、Teams 和其他受支持的渠道创建命名项目告警。只需保存一次通知目标与凭据引用,即可在多个任务模板中重用。集中管理通知发送的团队仍可使用共享服务器渠道。
发送需要关注的事件
为受支持的聊天目标选择成功、失败或等待确认事件。如果例行成功结果会带来噪音,可在模板中抑制。电子邮件任务告警报告失败,因此应同时选择适合作业的渠道与事件。
按模板或计划选择告警
采用项目默认值保持配置一致,或为模板选择一组自定义项目告警。计划可以继承或覆盖该选择。将高噪音测试作业与负责监控定期生产工作的通知目标分开。
将消息关联到执行记录
使用 Go 模板和任务上下文自定义项目告警消息。包含任务 URL,以便工程师打开输出、时间和结果。在将通知用于重要自动化之前,请从告警页面测试每个目标。
文档与相关功能
FAQ
Semaphore 支持哪些通知渠道?
Semaphore 支持 SMTP 邮件、Slack、Microsoft Teams、Telegram、Rocket.Chat、DingTalk 和 Gotify。为团队关注的通知目标配置共享服务器渠道或命名项目告警。提供程序凭据可从 Key Store 引用。依照渠道配置指南操作,并在依赖定时运维通知之前发送测试消息。
不同作业能通知不同的 Slack 或 Teams 频道吗?
可以。在项目中创建具有所需目标和事件的命名告警。任务模板可继承项目默认值,或选择自定义告警集合。这样,团队既能将不同作业路由到不同渠道,也能跨模板重用通知目标配置。计划可继承或覆盖模板选择。
能仅在任务失败时通知团队吗?
为相关项目告警选择失败事件。任务模板也提供成功和错误通知的抑制控制,因此例行检查成功后不必占满团队频道。等待确认的告警单独处理。在决定哪些结果应产生消息时,请同时审查目标事件选择和模板设置。
如何在不运行 Playbook 的情况下测试告警?
对单个项目告警使用 Send test message,或使用 Test all 检查已配置的项目通知目标。两种操作均无需启动基础设施自动化。确认收到消息后,运行无害任务,验证实际事件规则及返回结果的链接。变更凭据或 Webhook URL 后,应重复测试。
为什么任务已结束,却没有发送告警?
确认通知目标已启用、凭据有效,且选定事件包含对应的任务结果。检查模板是继承项目默认设置、使用自定义告警集合,还是抑制该类结果。对于计划任务,还需检查计划中的覆盖设置。空的自定义选择可以有意禁用该作业的项目告警发送。
能自定义通知消息吗?
命名项目告警支持带任务上下文的 Go 模板消息,包括任务 URL 和触发类型。利用这些上下文,帮助同事识别作业并打开执行记录。消息应简洁,避免包含敏感值。告警报告事件,而事故责任归属和升级流程仍由团队自行管理。
定期补丁和证书检查能发送失败告警吗?
可以。定时任务使用已配置的告警选择,可从任务模板继承,也可在计划中覆盖。Ansible 补丁、备份检查或证书更新失败时,可以将结果发送给团队,无需有人一直查看仪表板。打开链接中的任务,查看输出和执行详情。
邮件和聊天告警报告相同的事件吗?
它们支持的事件不同。邮件任务告警报告失败,受支持的聊天渠道还可报告成功和等待确认事件。请为每个项目通知目标选择相关事件,并审查模板抑制设置。通知是进入任务证据的途径,不能替代结果检查或事故管理。
