CloudWatch Insights 按日期

Tim*_*man 5 logging amazon-web-services amazon-cloudwatch amazon-cloudwatchlogs aws-cloudwatch-log-insights

我正在尝试为 Amazon Connect 创建一个 CloudWatch Insights 查询,该查询将按日期提供呼叫计数。我可以按日期获取日志消息的数量,但是,我只需要计算唯一的 ContactId。我的查询有许多重复的 ContactId,因为每次 Connect 记录到 CloudWatch 时,它都会使用 ContactId 将与联系人相关的所有事件绑定在一起。有没有办法修改此查询以仅显示唯一 ContactId 的计数?

filter @message like /ContactId/
| stats count(*) as callCount by toMillis(datefloor(1d))
| sort callCount desc
Run Code Online (Sandbox Code Playgroud)

Tim*_*man 5

令人尴尬的是,在发布此消息后,我几乎立即找到了答案。count_distinct() 为我提供了我需要的东西。

filter @message like /ContactId/
| stats count_distinct(ContactId) as callCount by toMillis(datefloor(1d))
| sort callCount desc
Run Code Online (Sandbox Code Playgroud)

  • 我认为 datefloor 函数需要两个值;时间戳和周期。因此,查询将更改为 - ```filter @message like /ContactId/ | 统计 count_distinct(ContactId) as callCount by toMillis(datefloor(@timestamp, 1d)) | 对 callCount desc 进行排序``` (3认同)