我正在使用EC2实例。我已将应用程序中的异常记录到cloudwatch日志中。 日志格式为JSON对象/字符串:
{
'application': 'abc',
'type': '404',
'error': 'The page you requested was not found.'
}
现在,我想根据日志类型在电子邮件地址上通过电子邮件发送特定日志,例如:仅输入404类型的日志。 我该如何实现?
答案 0 :(得分:0)
我没有将SNS视为对日志组的订阅,但是您可以使用Lambda函数来完成此操作。
当日志匹配时,触发lambda并从lambda中触发,您可以发送电子邮件或可以根据消息执行任何操作。
在订阅中添加过滤器。
aws logs put-subscription-filter --log-group-name /aws/ec2/execption --destination-arn arn:aws:lambda:us-east-1:123456:function:send-email-on-exception --filter-name ec2-404-errors --filter-pattern "404"
过滤器和模式语法
您可以使用指标过滤器来搜索和匹配术语,短语或 日志事件中的值。当指标过滤器找到 日志事件中的术语,词组或值,您可以增加 CloudWatch指标的值。例如,您可以创建一个指标 筛选以搜索并计算ERROR中单词ERROR的出现 您的日志事件。
您可以浏览此article来读取aws CW日志事件。