

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# dedup
<a name="CWL_QuerySyntax-Dedup"></a>

 `dedup`을 사용하여 지정한 필드의 특정 값을 기준으로 중복 결과를 제거합니다. 하나 이상의 필드와 함께 `dedup`을 사용할 수 있습니다. `dedup`을 사용하여 하나의 필드를 지정하면 해당 필드의 각 고유 값에 대해 하나의 로그 이벤트만 반환됩니다. 여러 필드를 지정하면 해당 필드의 고유한 값 조합마다 하나의 로그 이벤트가 반환됩니다.

중복 항목은 정렬 순서에 따라 삭제되며 정렬 순서의 첫 번째 결과만 유지됩니다. `dedup` 명령을 실행하기 전에 결과를 정렬하는 것이 좋습니다. `dedup`을 실행하기 전에 결과가 정렬되지 않으면 `@timestamp`을 사용하는 기본 내림차순 정렬 순서가 사용됩니다.

Null 값은 평가를 위해 중복으로 간주되지 않습니다. 지정된 필드에 대해 null 값이 있는 로그 이벤트는 유지됩니다. Null 값이 있는 필드를 제거하려면 `isPresent(field)` 함수를 사용하여 **`filter`**을 사용합니다.

`dedup` 명령 이후 쿼리에서 사용할 수 있는 유일한 쿼리 명령은 `limit`입니다.

쿼리`dedup`에서를 사용하면 콘솔에 **Y 레코드 X 표시**와 같은 메시지가 표시됩니다. 여기서 X는 중복 제거된 결과 수이고 Y는 중복 제거 전에 일치하는 총 레코드 수입니다. 이는 중복 레코드가 제거되었음을 나타내며 데이터가 누락되었음을 의미하지 않습니다.

 **예: 이름이 `server`인 필드의 각 고유 값에 대한 최신 로그 이벤트만 보기** 

 다음 예제에서는 `server`의 각 고유 값에 대해 최신 이벤트에 대한 `timestamp`, `server`, `severity` 및 `message` 필드를 표시합니다.

```
fields @timestamp, server, severity, message 
| sort @timestamp desc 
| dedup server
```

CloudWatch Logs Insights 쿼리의 더 많은 샘플은 [일반 쿼리](CWL_QuerySyntax-examples.md#CWL_QuerySyntax-examples-general) 섹션을 참조하세요.