使用 AWS Chatbot 将 CloudWatch 警报通知到 Slack!

*Miki Jet(神户玛雅)

大家好!
我是来自Beyond Inc.大阪办公室的拉面大王Hide。
这是我的第五篇帖子。

上次,我谈到了如何将 CloudWatch 警报通知给 Teams 和 Chatwork,这是我最近在一个项目中实现的。

这次,我将讲解如何使用 AWS Chatbot 将 CloudWatch 警报通知到 Slack。

我在之前的博客文章中写了一篇关于使用 AWS Lambda 和 Python 创建通知的有趣文章,如果您感兴趣,请去看看!

我尝试将 CloudWatch 警报通知到 Teams 和 Chatwork!

配置图

配置图如上所示。

CloudWatch 会检索 EC2 指标,并在发生警报时通知 SNS。然后,SNS 会将 CloudWatch 发送的警报发送给聊天机器人。

聊天机器人随后会将警报发送到 Slack。此配置未使用 AWS Lambda,因此比 Teams 或 Chatwork 更容易实现。

所以让我们努力奋斗,共同建设它吧!

施工程序

① 社交媒体

①-①:点击 SNS > 话题 > 创建话题

①-②:填写以下信息,然后点击【创建主题】

● 类型:标准
● 名称:请输入您的常用名称

 

①-③:验证是否创建成功

② 聊天机器人

②-①:聊天机器人 > 已配置客户端 > 点击【设置新客户端】

②-②:选择 Slack 并点击【设置】

②-③:登录您的工作区

*如果您已登录,将出现以下屏幕。
如果您想创建一个新的工作区,请点击右上角的【添加另一个工作区】。

以下是如何查找您的 Slack 工作区 URL 的方法:

参考:请查看您所在工作区的 Slack URL

1. 点击您正在参与的工作区名称

 

2. 在工作区名称下方,找到您要加入的工作区的 Slack URL。

②-④:登录到指定的工作区

②-⑤:允许权限


②-⑥:确认批准后,点击【设置新频道】

②-⑦:输入设置名称

*请为该设置命名。
*如果您希望将日志记录到 CloudWatch Logs 中,请选中此框。

②-⑧:选择一个 Slack 频道

*选择公开或私有频道,然后选择频道名称。

②-⑨:设置角色

● 频道 IAM 角色:
授予 Slack 频道中所有成员相同权限的角色。

● 用户角色:
为 Slack 频道中的每个成员授予不同权限的角色

②-⑩:设置通道 IAM 角色

*对于“渠道 IAM 角色”,请选择“使用模板创建 IAM 角色”。
*对于“角色名称”,您可以随意选择。

②-⑪:设置策略模板

②-⑫:通道护栏政策

● 通道防护策略
此策略优先于通道 IAM 角色和用户角色。
启用 CloudWatchReadOnlyAccess 后,您可以查看图表。

②-⑬:通知设置

*请具体说明您在社交媒体上创建的主题。

③ CloudWatch

我们将假设 EC2 已创建。

③-①:点击 CloudWatch > 警报 > 创建警报。

选择您偏好的指标

③-③:选择报警条件

③-④:通知设置

③-⑤:指定报警名称

③-⑥点击【创建闹钟】

④ 通知测试

④-①:检查警报是否生效

④-②:检查警报是否已发出

*如果您设置阈值,使警报不会发生,则可以按如下所示确认恢复情况。

概括

这次,我们介绍了一篇关于如何使用聊天机器人将 CloudWatch 警报通知 Slack 的文章。

您可以使用聊天机器人轻松接收 Slack 上的警报通知。
警报中包含图表 URL 和图像,使警报内容非常易于阅读!

虽然使用 Slack 很容易实现,但使用 Teams 或 Chatwork 设置警报通知需要大量工作,例如使用 AWS Lambda 编写 Python 代码并设置 Webhook…….

我真心希望AWS能让Teams和Chatwork兼容聊天机器人(虽然这大概不可能……)。

如果您觉得这篇文章有用,请点击【点赞】!
15
加载中...
15票,平均分:1.00/115
13,568
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

隐藏@基础设施工程师

一切都始于一次非常有趣的面试。
我职业生涯中期加入了大阪的系统解决方案部门,
目前负责服务器和云的构建与运维!
我持有LPIC1、AWS SAA和OCI架构师助理认证。

事实上,我超爱拉面,
在大阪已经探访过100多家拉面店了(。-∀-)我正在努力成为Nibi Beyond

我也有推特账号,请关注我哦 (´∇`)
点击右上角的推特图标!!