将s3中的自定义日志上传到cloudwatch以进行指标监视

时间:2020-09-05 08:05:10

标签: amazon-web-services amazon-s3 amazon-cloudwatch

我创建了一个自定义应用,该应用会自动将日志上传到s3。 有没有办法将这些日志从s3推送到cloudwatch以进行分析和警报? 我知道我可以使用cloudwatch代理直接从应用程序推送到cloudwatch,但是该选项涉及复杂性。 谢谢!

2 个答案:

答案 0 :(得分:1)

您可能可以使用Cloudwatch Events来监听S3的更改。不确定是否可以从S3文件中获取数据,或者只是触发器说已添加了新日志。

您还可以使用连接到Lambda或SQS的S3事件通知(https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html),然后从那里创建到Cloudwatch的日志。 (类似于@marcin的建议)

一种更好的解决方案,但是有点超出问题的范围,那就是通过Kinesis Firehose发送您的日志,然后从其中添加Cloudwatch和S3日志。

答案 1 :(得分:0)

我不知道AWS提供的任何现成机制。但是我认为开发相对容易。

也就是说,您可以为从应用程序到S3的新日志文件的PUT创建S3 notification。该事件将触发 lambda函数。该函数将获取文件并使用 AWS SDK ,例如boto3的put_log_events,它将日志事件发送到CloudWatch日志。