我的公司已开始使用 JSON 日志记录,以便更好地支持 AWS 上的 CloudWatch InSights 查询。查询非常容易使用,除非我们处理数组数据。
例如,如果我们有如下所示的日志条目:
{
"id": 123,
"method": "getRelatedPolicies",
"policiesRetrieved": [
"333g",
"444q"
]
}
{
"id": 222,
"method": "getRelatedPolicies",
"policiesRetrieved": [
"123q",
"234w",
"345e",
"456r"
]
}
{
"id": 432,
"method": "getRelatedPolicies",
"policiesRetrieved": [
"345e"
]
}
Run Code Online (Sandbox Code Playgroud)
它们在 CloudWatch Insights 中展平,如下所示:
id 123,
method getRelatedPolicies
policiesRetrieved.0 333g
policiesRetrieved.1 444q
id 222,
method getRelatedPolicies
policiesRetrieved.0 123q
policiesRetrieved.1 234w
policiesRetrieved.2 345e
policiesRetrieved.3 456r
id 432,
method getRelatedPolicies
policiesRetrieved.0 345e
Run Code Online (Sandbox Code Playgroud)
但是我该怎么做才能搜索policiesRetrieved 数组包含该值的任何日志条目呢345e?数组中可能有任意数量的条目,所以我不能只是开始添加像or policiesRetrieved.0 = …