我正在尝试使用Lambda函数或Amazon Kinesis将cloudwatch日志推送到 Elasticsearch 。我有日志组设置和使用Terraform运行的 Elasticsearch 域。请提出如何将日志从日志组推送到 Elasticsearch 的建议。如果您有相同的地形代码,请分享。
最佳答案
This answer提供了一些示例Terraform代码,用于创建lambda和Cloudwatch订阅,该订阅将日志从Cloudwatch日志组发送到Sumologic HTTP收集器(仅是基本的HTTP POST端点)。每当将新一批日志条目发布到日志组时,Cloudwatch预订都会调用Lambda。
该Terraform代码中引用的cloudwatch-sumologic-lambda
是从Sumologic Lambda example模式化的。
我以为您会做类似的事情,但是重新编写Lambda来格式化HTTP,但是ElasticSearch要求。我敢打赌,快速搜索一下您会发现很多例子。
但是,对于所有此Terraform配置,您也可以转到Cloudwatch控制台,选择所需的日志组,然后选择“流至Amazon ElasticSearch”。
虽然我认为这仅在您使用AWS“ElasticSearch服务”产品时才有效-这意味着,如果您自己在某些EC2实例上安装/配置了ElasticSearch,则可能无法使用。
关于elasticsearch - Terraform:CloudWatch记录到Elasticsearch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43902055/