生成特定参数,以便在 CloudWatch Alarm 的 SNS 电子邮件通知中显示日志组的参数

0

【以下的问题经过翻译处理】 我可以创建一个CloudWatch警报,该警报会从日志组中的"ERROR"指标过滤器触发,但我需要向CloudWatch警报生成的电子邮件通知中添加特定参数。我已经创建了一个SNS主题和SNS订阅以生成通知,但我无法弄清楚如何添加以下参数到电子邮件中。我尝试使用PowerShell命令来实现这一点,但收到了"Delivery protocol [email] does not support raw message delivery"的错误。经过研究,似乎我需要创建一个Lambda函数来实现这一点。我正在寻求关于如何构建Lambda函数的指导,以获取日志组中指标过滤器的原始数据,并在ERROR CloudWatch警报触发时将该信息发送到电子邮件中。

    "@@t" - time
    "SourceContext" - the context of the occurred error
    "MachineName" - server name
    "@log" - the log group name

1 réponse
0

【以下的回答经过翻译处理】 目前,您无法直接在CloudWatch警报通知中嵌入您正在寻找的数据。然而,正如您发现的,您可以通过使用Lambda等形式的自定义代码来丰富通知。CloudWatch警报支持SNS作为目标,连接到Lambda函数非常简单。

您可以查看 https://github.com/awslabs/cloudwatch-logs-customize-alarms,了解如何使用日志事件详细信息来丰富警报的示例。由于每个指标过滤器都唯一对应一个日志组,您可以利用警报的"Description"字段来传达日志组的信息。描述会显示在通知电子邮件中。

以下是解释端到端流程的博客文章链接:https://aws.amazon.com/blogs/mt/customize-amazon-cloudwatch-alarm-notifications-to-your-local-time-zone-part-1/

profile picture
EXPERT
répondu il y a 5 mois

Vous n'êtes pas connecté. Se connecter pour publier une réponse.

Une bonne réponse répond clairement à la question, contient des commentaires constructifs et encourage le développement professionnel de la personne qui pose la question.

Instructions pour répondre aux questions