如何通过AWS Cloudwatch进行全文搜索?

时间:2018-02-06 08:41:59

标签: python amazon-web-services logging amazon-cloudwatch structured-logging

我使用结构化日志记录(因此:记录json字符串)并使用日志标识符。因此,在我的代码中,每条日志消息都有一个唯一的标识符,以便我可以在两个方向上进行搜索:当我看到日志消息时,我知道它来自哪里,当我期望日志消息时,我可以搜索此标识符。

我的日志字符串如下所示:

{"log-id": "##_foo_bar-1", "message": "some explanation", "customer_id": 123}

我不太确定我是否需要使用Cloudwatch做其他事情,因为它看起来像这样:

[2018-02-06 08:34:09,946]:[INFO]: {"log-id": "##_foo_bar-1", "message": "some explanation", "customer_id": 123}

最近,我正在寻找我的标识符##_foo_bar-1,Cloudwatch告诉我:

enter image description here

我也尝试过:

{$.log-id = "##_foo_bar-1"}

没有成功。但它确实在日志中(我已经看过它,在手动完成之后)。

如何使用搜索功能找到它?

1 个答案:

答案 0 :(得分:1)

将搜索字词放在引号中应该有效,如下所示:"##_foo_bar-1"

搜索{$.log-id = "##_foo_bar-1"}也应该有效。我尝试记录您在问题中使用的相同示例语句,这就是我得到的:

CloudWatch logs screenshot

也许您的日志消息未被识别为json,您是否看到它像我的屏幕截图一样被解析和着色?