0

阅读文档似乎可以在 AWS Cloudwatch 中运行具有多个日志组的查询,但我看不到任何有关如何执行此操作的示例。

我想使用通用属性加入两个日志组,并使用过滤器选择一些日志。

有没有人遇到同样的问题并找到了解决方案?提前致谢。

4

2 回答 2

1

您可以安装Athena Cloudwatch 连接器。在此之前,您将能够像表一样使用每个日志组在 Athena 中进行查询。

select s.message, c.message, split_part(c.message, '/',3)
from "lambda:athena-cloudwatch-catalog"."/aws/lambda/<LOG_GROUP_1>".all_log_streams c,
"lambda:athena-cloudwatch-catalog"."/aws/lambda/<LOG_GROUP_2>".all_log_streams s
where 
s.message like split_part(c.message, '/',3) and
c.message like '%S3%';
于 2022-02-25T18:48:34.240 回答
0

如果您在谈论 AWS 控制台,选择多个日志组的选项是一个复选框,您可以选择 20 多个日志组。 AWS CloudWatch 见解控制台

如果您参考 AWS CLI,您还可以选择多个日志组。首先创建查询(在一个或多个日志组中)(https://docs.aws.amazon.com/cli/latest/reference/logs/start-query.html),然后获取结果(https://docs .aws.amazon.com/cli/latest/reference/logs/get-query-results.html

例子:

使用多个日志组创建查询:

aws logs start-query --log-group-names "/aws/apigateway/welcome" "/aws/lambda/Test01" 
--start-time 1598936400000 --end-time 1611464400000 --query-string "fields @timestamp, 
@message"

从创建的查询中恢复结果:

aws logs get-query-results --query-id <query_id>

AWS CLI CloudWatch 见解

于 2021-01-26T20:52:11.720 回答