我刚刚在ec2实例上配置了Cloudwatch日志,到目前为止我很喜欢它。我还为某些关键字设置了提醒,例如" ERROR"。虽然电子邮件提醒似乎工作正常,但我想知道是否有一种方法可以微调警报电子邮件,使其简洁明了。翔实。具体来说,我正在寻找
删除警报电子邮件中的所有样板文本。
包含有关触发警报的错误/异常的一些信息。这可能就像包含生成警报的日志语句一样简单。
现在,提醒电子邮件似乎是
您收到此电子邮件是因为您的Amazon CloudWatch警报 "应用-错误报警"在美国东部 - 弗吉尼亚州的N区进入了 ALARM状态,因为"阈值交叉:1个数据点(1.0)更大 大于或等于阈值(1.0)。"在" 2017年2月7日星期二 16:39:43 UTC"。
在AWS管理控制台中查看此警报: https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#s=Alarms&alarm=App-Error-Alarm
警报详情: - 名称:App-Error-Alarm - 描述:app.log中的错误 - 州变更:INSUFFICIENT_DATA - >报警 - 状态变化的原因:阈值交叉:1个数据点(1.0)大于或等于阈值(1.0)。 - 时间戳:2017年2月7日星期二16:39:43 UTC - AWS账户:<>
阈值: - 当度量标准为GreaterThanOrEqualToThreshold 1.0 300秒时,警报处于ALARM状态。
受监控的指标: - MetricNamespace:LogMetrics - MetricName:错误 - 尺寸: - 时间:300秒 - 统计:总和 - 单位:未指定
州改变行动: - 好: - 警报:[arn:aws:sns:us-east-1:<>:support] - INSUFFICIENT_DATA:
我喜欢
之类的东西警报:应用错误警报
关键字:"错误"
原因:错误2017-02-07 07:31:47,375 [SimpleAsyncTaskExecutor-5] com.app.server.rest.Watcher:javax.net.ssl.SSLHandshakeException: 收到致命警报:handshake_failure
它短小,甜美,瞬间告诉我它是否需要我立即注意。这可以在不编写建议here的代码的情况下完成吗?
答案 0 :(得分:5)
您有此问题,因为您配置了警报,并且该警报用于聚合数据,而不是特定的日志记录。您为某些度量标准配置(使用ERROR关键字的日志记录数)。
您可以改用日志订阅,并将与过滤器匹配的所有日志记录流式传输到自定义Lambda函数。您可以使用它将通知发送到电子邮件或Slack。
要配置日志流,请在AWS控制台中转到Lambda并从名为“ cloudwatch-logs-process-data” 的蓝图创建新功能。它具有基本结构,可以轻松地根据您的需求进行定制。
答案 1 :(得分:1)
您可以使用Cloudwatch Logs Customize alarms Package提供的AWS labs自定义Cloudwatch闹钟。
当您收到警报时,您需要足够的信息来决定是否 它需要立即关注与否。您还想自定义 报警文本以满足运营需求。 CloudWatch日志自定义警报 是一个Lambda函数,有助于从CloudWatch读取日志 在警报期间记录并通过SES发送自定义电子邮件。
这些软件包提供了使用Lambda SNS端点的功能,然后可以根据您的操作要求自定义警报通知。