我有一个在AWS EC2内运行的Ruby on Rails应用程序,它将所有应用程序日志推送到cloudwatchlog组。现在的任务是每天从cloudwatch日志中获取警报,报告一天中产生了多少个错误代码。
示例:
如果我的应用程序给出了10个“ 500个内部服务器错误”,5个“ 403禁止的错误”。我应该从AWS服务收到一封电子邮件,“您的应用程序已生成10-500个错误代码 5-403错误代码。“
我认为我们可以使用lambda函数和AWS SNS服务来实现这一点,但不知道如何编写我的lambda函数以这种方式工作。
我需要一个lambda函数代码来存储错误代码计数,捕获数据后,我可以每天在特定时间运行lambda函数来发送电子邮件。
请帮忙。
预先感谢:)
您在EC2前面有什么样的负载均衡器;如果有的话?
Cloudwatch已经包含以下负载均衡器指标:
HTTPCode_Target_2XX_Count,HTTPCode_Target_3XX_Count,HTTPCode_Target_4XX_Count,HTTPCode_Target_5XX_Count参见-https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html
请求这些指标可能比解析您的应用程序日志文件和计算结果要容易。
如果这是您可以接受的途径,我们很乐意提供更多详细信息。