本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
dedup
使用 dedup 根据您指定的字段中的特定值删除重复的结果。您可以将 dedup 与一个或多个字段配合使用。如果为一个字段指定 dedup,则会仅为该字段的每个唯一值返回一个日志事件。如果指定多个字段,则会为这些字段的每个唯一值组合返回一个日志事件。
重复项会根据排序顺序被丢弃,只保留排序顺序中的第一个结果。我们建议您在 dedup 执行命令之前对结果进行排序。如果在运行 dedup 之前未对结果进行排序,则会运用使用 @timestamp 时的默认降序排序顺序。
在评估中,NULL 值不被视为重复值。任何指定字段的值为 NULL 值的日志事件都将被保留。要消除具有 NULL 值的字段,请运用使用 isPresent(field) 函数的 filter。
在 dedup 命令之后可以在查询中使用的唯一查询命令是 limit。
示例:仅查看名为 server 的字段的每个唯一值的最新日志事件
以下示例仅显示 server 每个唯一值的最新事件的 timestamp、server、severity 和 message 字段。
fields @timestamp, server, severity, message | sort @timestamp desc | dedup server
有关 CloudWatch Logs Insights 查询的更多示例,请参阅常规查询。