【问题标题】:Find Cloudwatch log group for a given resource查找给定资源的 Cloudwatch 日志组
【发布时间】:2019-02-18 13:04:27
【问题描述】:

我正在创建一个日志聚合器 lambda,以将 Cloudwatch 日志发送到私有日志分析服务。鉴于我的雇主使用的资源数量,决定创建一个 subscription lambda 来处理对聚合器的日志组订阅。

该解决方案运行良好,但需要通过亚马逊控制台手动搜索资源的日志组,然后使用它调用订阅 lambda。

我的问题:

有没有办法在给定资源 arn 的情况下找到映射到它的日志组?由于我使用 Cloudformation 创建资源,因此很容易导出资源的 arn。

更新

举个例子:

假设我有以下 arn:

arn:aws:appsync:<REGION>:<ACCOUNTID>apis/z3pihpr4gfbzhflthkyjjh6yvu

这是一个 Appsync GraphQL API。

我想要一种方法(使用 API 或一些自动化解决方案)来获取该资源的 Cloudwatch 日志组。

【问题讨论】:

  • 你说given a resource arn。什么类型的资源?举个例子:输入、预期输出等,

标签: amazon-web-services aws-sdk aws-cli amazon-cloudwatchlogs


【解决方案1】:

您可以尝试describe-log-groups 命令。它在 cli 上可用,也必须在 API 上。
要获取日志组的名称,您可以使用:

aws logs describe-log-groups --query 'logGroups[*].logGroupName' --log-group-name-prefix '/aws/appsync/[name-of-the-resource]'

输出将如下所示:

[
“/aws/appsync/[您的资源名称]”
]

【讨论】:

  • 不是我当时看到的,但是一个很好的解决方案
猜你喜欢
  • 2018-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-09
  • 2018-02-16
  • 1970-01-01
  • 1970-01-01
  • 2020-02-22
相关资源
最近更新 更多