1

我想使用 Sumo Logic 自动设置 AWS Application Load Balancer 日志的收集,如下所述:

https://help.sumologic.com/07Sumo-Logic-Apps/01Amazon_and_AWS/AWS_Elastic_Load_Balancer_-_Application/01_Collect_Logs_for_the_AWS_Elastic_Load_Balancer_Application_App

这包括创建一个存储桶,使用 S3 源创建一个 Sumo Logic 托管收集器,获取 Sumo Logic 提供的收集器源的 URL,然后使用 HTTP 订阅创建一个 SNS 主题,其中订阅 URL 是 Sumo Logic 提供的一个资源。

问题在于 SumoLogic 源 URL 在合成时未知。必须部署 Bucket,然后创建 Sumlogic 事物,然后创建 SNS 主题。

尽我所能,我将不得不通过使用单独的堆栈单独调用 CDK 来做到这一点,这比较慢。一个堆栈来创建存储桶。部署该堆栈后,使用 Sumo Logic api 创建或确认之前创建的 Sumo Logic 托管收集器和源,另一个 CDK 部署以创建 SNS 主题和 HTTP 订阅。

我只是想知道是否有人知道这样做的更好方法,也许是某种可以使用的部署时间挂钩。

4

3 回答 3

2

有两种方法(我知道)可以自动收集 AWS Application Load Balancer。

  1. 使用 CloudFormation
  • Sumo Logic 有一个模板,它为 AWS 应用程序负载均衡器创建收集过程,它是 AWS 可观察性解决方案的一部分。您可以分叉存储库,并可以在删除不需要的资源后创建自己的 CloudFormation 模板。
  • Sumo Logic 还有一个无服务器应用程序,它自动为现有和新的(在应用程序安装后创建的)负载平衡器启用访问日志记录。使用该应用程序的示例模板。
  1. 使用 Terraform
  • 正如Grzegorz所提到的,您也可以创建一个 terraform 脚本。

免责声明:目前受雇于 Sumo Logic。

于 2020-10-05T08:34:39.170 回答
0

您可以尝试使用自定义资源 SDK 调用来触发执行所需操作的 lambda。

https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_custom-resources.AwsSdkCall.html

于 2020-10-05T04:43:59.977 回答
0

(我知道这不是一个完美的答案,因为它建议使用另一种工具,但我相信它可以满足问题中表达的需求)

使用 Terraform 怎么样?

sumologic_s3_source在 Terraform中,能够在 Sumo 中创建源并输出其 URL 以供 Terraform 中的其他用途 - 例如设置 AWS 资源。

这个文档甚至提到 URL 是返回值之一:

url - 与 SNS 一起使用以通知 Sumo Logic 新文件的 HTTP 端点。

免责声明:我目前受雇于 Sumo Logic。

于 2020-10-05T07:46:20.573 回答