본문 바로가기
WIKI 기술 지식 베이스

고급 필터링

원문 보기 위키 갱신

Datadog에서 메트릭을 조회할 때 태그 기반으로 기본 필터링을 적용할 수 있을 뿐 아니라, 불리언(Boolean) 문법이나 와일드카드(Wildcard) 기법을 활용해 더 정밀한 고급 필터링도 할 수 있어요. 이 문서에서는 태그를 조합하거나 부분 문자열로 일치시키는 방법과, 제외(Exclusion) 함수로 시각화의 범위를 좁히는 방법을 함께 살펴봐요.

출처: 문서

본문

개요

Metrics Explorer, 모니터(Monitor) 또는 대시보드(Dashboard)에서 메트릭 데이터를 조회할 때 필터를 적용해 반환되는 타임시리즈의 범위를 좁힐 수 있어요. 모든 메트릭은 메트릭 이름 오른쪽에 있는 from 필드를 통해 태그로 필터링할 수 있답니다.

또한 불리언(Boolean) 또는 와일드카드(Wildcard) 태그 값 필터를 사용해 고급 필터링을 수행할 수도 있어요. 로그, 트레이스, 네트워크 모니터링, 실제 사용자 모니터링, 신서틱(Synthetics), 보안 등 메트릭 데이터가 아닌 조회에 대한 설정은 Log Search Syntax 문서를 참고해 주세요.

불리언 필터링 쿼리

불리언 필터링 메트릭 쿼리에서 지원되는 문법은 다음과 같아요.

  • !
  • ,
  • NOT, not
  • AND, and
  • OR, or
  • IN, in
  • NOT IN, not in

여러 태그를 포함하거나 제외할 때는 다음 규칙이 적용돼요.

  • 포함(Include)은 AND 로직을 사용해요.
  • 제외(Exclude)는 OR 로직을 사용해요.

태그에 대한 자세한 내용은 Getting Started With Using Tags 가이드를 참고해 주세요.

참고: 기호식 불리언 문법(!, ,)은 함수식 문법 연산자(NOT, AND, OR, IN, NOT IN)와 함께 쓸 수 없어요. 다음 쿼리는 유효하지 않은 쿼리로 간주됩니다. avg:mymetric{env:prod AND !region:us-east}

불리언 필터링 쿼리 예시

아래의 예시를 사용하려면 코드 아이콘 </>을 클릭해 UI에서 쿼리 편집기를 열고, 쿼리 예시를 복사해 쿼리 편집기에 붙여넣으면 돼요.

avg:system.cpu.user{env:staging AND (availability-zone:us-east-1a OR availability-zone:us-east-1c)} by {availability-zone}

{% video url="https://docs.dd-static.net/images/metrics/advanced-filtering/graph_editor_code_option.mp4" /%}

avg:system.cpu.user{env:shop.ist AND availability-zone IN (us-east-1a, us-east-1b, us-east4-b)} by {availability-zone}

{% image source="https://docs.dd-static.net/images/metrics/advanced-filtering/boolean_and_in.4ffaf8fa1a12dc6ce84b64a5673e7187.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/metrics/advanced-filtering/boolean_and_in.4ffaf8fa1a12dc6ce84b64a5673e7187.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Boolean example AND IN" /%}

avg:system.cpu.user{env:prod AND location NOT IN (atlanta,seattle,las-vegas)}

{% image source="https://docs.dd-static.net/images/metrics/advanced-filtering/boolean_not_in.4188e6532f99d471cc236e230214528a.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/metrics/advanced-filtering/boolean_not_in.4188e6532f99d471cc236e230214528a.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Boolean example NOT IN" /%}

와일드카드 필터링 쿼리

접두사(prefix), 접미사(suffix), 부분 문자열(substring) 와일드카드 태그 필터링이 지원돼요.

  • pod_name: web-*
  • cluster:*-trace
  • node:*-prod-*

와일드카드 필터링 쿼리 예시

avg:system.disk.in_use{!device:/dev/loop*} by {device}

{% image source="https://docs.dd-static.net/images/metrics/advanced-filtering/wildcard_suffix_example.18f7a5b5b262632d1d7c884fcde7ec3b.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/metrics/advanced-filtering/wildcard_suffix_example.18f7a5b5b262632d1d7c884fcde7ec3b.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Wildcard used as suffix" /%}

sum:kubernetes.pods.running{service:*-canary} by {service}

{% image source="https://docs.dd-static.net/images/metrics/advanced-filtering/wildcard_prefix_example.c80b88ab29c5f96ef743f1ae70586610.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/metrics/advanced-filtering/wildcard_prefix_example.c80b88ab29c5f96ef743f1ae70586610.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Wildcard used as prefix" /%}

avg:system.disk.utilized{region:*east*} by {region}

{% image source="https://docs.dd-static.net/images/metrics/advanced-filtering/wildcard_infix.609f406f4c5a9c48fc54fecc69616a22.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/metrics/advanced-filtering/wildcard_infix.609f406f4c5a9c48fc54fecc69616a22.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Wildcard used as infix" /%}

제외(Exclusion) 함수

제외 함수를 쿼리에 추가하면 다음 작업을 할 수 있어요.

  • N/A 값을 제외할 수 있어요.
  • 임계값을 충족하는 메트릭에 최솟값 또는 최댓값을 적용할 수 있어요.
  • 임계값보다 높거나 낮은 값을 제외할 수 있어요.

함수는 Datadog에서 datapoint를 삭제하진 않지만, 시각화에서는 해당 datapoint를 제거해요.

더 알아보기 (Learn more)

추가로 도움이 되는 문서, 링크, 글: