Cloudwatch Insights 解析对象数组中的字段

问题描述 投票:0回答:1

我有这个示例日志,我想检索某个字段的所有值并将它们连接到日志洞察结果上。我尝试解析它,但它只能检索它的第一次出现。

示例日志:

Field   Value
@message                      {"level":"INFO","message":"Event","timestamp":"2023-04-05T20:27:42.606Z","event":{"version":"0","time":"2023-04-05T20:27:41Z","resources":[""],"detail":{"Entries":[{"Code":"C25"},{"Code":"C27"}]}}}
@timestamp                    1680726462608
event.detail.Entries.0.Code   C25
event.detail.Entries.1.Code   C27
event.time                    2023-04-05T20:27:41Z
event.version                 0
level                         INFO
message                       Event
timestamp                     2023-04-05T20:27:42.606Z

我想要实现的目标:

@timestamp                    code
2023-04-05T20:27:42.606Z      C25,C27

我尝试过的:

filter message like /Event/
| parse @message '{"Code":"*"}' as code
| sort @timestamp desc
| limit 20

我得到了什么:

@timestamp                    code
2023-04-05T20:27:42.606Z      C25

查询无法检索到代码“C27”。这怎么办?

amazon-web-services amazon-cloudwatch amazon-cloudwatchlogs aws-cloudwatch-log-insights
1个回答
0
投票

不确定您是否仍然需要答案,但我也遇到过类似的问题,不同之处在于我的对象更大且嵌套更多。我尝试了一些可用的解决方案,但由于我使用的数据非常复杂,所以没有任何解决方案对我有用。我设法发明了一种(有点黑客和手动)解决方法,如果您想查看的话,请参阅下面的答案。

AWS 日志洞察,解析日志中的所有事件

© www.soinside.com 2019 - 2024. All rights reserved.