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

신서틱 모니터

원문 보기 위키 갱신

Synthetic 테스트를 만들면 Datadog가 자동으로 연관 모니터를 생성해요. Synthetic 테스트가 실패할 때 알림을 받도록 모니터를 구성할 수 있지요. 신서틱 모니터는 테스트 상태에 따라 이메일, Slack, PagerDuty 등 다양한 채널로 알림을 보내요.

출처: 문서

본문

개요

Synthetic 테스트를 만들 때 Datadog는 자동으로 연관 모니터를 생성해요. Synthetic 테스트 모니터가 알림을 보낼 때 알림을 설정할 수 있어요.

Synthetic 테스트 모니터 만들기

{% alert level="info" %} Synthetic 테스트 모니터는 애플리케이션의 Synthetic Monitoring 섹션 내에서만 만들 수 있어요. 일반 Monitors 페이지는 메트릭, 로그, 프로세스 기반 모니터 같은 다른 유형의 모니터를 만드는 데 사용돼요. {% /alert %}

새 Synthetic 테스트 또는 기존 Synthetic 테스트의 Monitor 섹션에서 모니터를 만들어, Synthetic Monitoring 테스트가 실패할 때 알림을 보내세요. 모니터는 만든 Synthetic 테스트와 연관되며, Synthetic 테스트 구성에 설정된 알림 조건에 연결돼요. 모니터 속성 및 태그 변수를 사용하려면 metric monitor를 만드세요.

Synthetic Monitoring의 모니터 메시지는 다음으로 구성돼요.

  • Title: 모니터의 이름.
  • Custom message: 모니터를 만들 때 작성하는 선택적 텍스트.
  • Auto-appended summary: 실패한 위치, 오류 메시지, 테스트 링크를 포함.
  • Footer: 마지막 실패한 테스트 실행의 세부 정보를 포함.

{% image source="https://docs.dd-static.net/images/synthetics/guide/synthetics_test_monitors/configure_the_monitor_for_this_test_2.06b169c730f2427c26e1dee30d140f40.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/synthetics/guide/synthetics_test_monitors/configure_the_monitor_for_this_test_2.06b169c730f2427c26e1dee30d140f40.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Creating a monitor in your Synthetic test" /%}

Synthetic 모니터 보기 및 관리

  • Manage Monitors 페이지에서 검색할 수 있도록 모니터 이름을 커스터마이즈하세요. Synthetic 테스트 모니터를 찾으려면 검색 바에서 type:synthetics로 필터링하세요. 모니터 conditional variables을 사용해 테스트 상태에 따라 알림 메시지를 특성화할 수 있어요.

  • Synthetic 테스트 모니터는 이메일, Slack, Pagerduty, Microsoft Teams 같은 알림 채널과 통합돼요. 자세한 내용은 Notifications를 참고하세요.

  • 여러 계층의 알림이 있다면(예: Synthetic 테스트가 알림을 보내는 시간이 길수록 더 많은 팀에 알림), Datadog는 Synthetic 모니터에서 renotification을 활성화할 것을 권장해요.

자동 추가 태그

사용자가 추가한 커스텀 태그 외에도 Datadog는 테스트 구성에 따라 Synthetic 테스트 모니터에 다음 태그를 추가해요. 이 태그들을 사용해 Manage Monitors 페이지나 Synthetic Monitoring 테스트 목록에서 검색하고 필터링하세요.

태그 키 사용 가능한 값 태그가 포착하는 것
check_type api, browser, api-ssl, api-dns, api-tcp, api-icmp, api-grpc, api-udp, api-websocket, api-multi, mobile 테스트 유형과, 해당하는 경우 하위 유형. 간결성을 위해 http 하위 유형은 api 테스트에서 생략돼요.
check_status live, paused 테스트가 활성인지 일시 중지되었는지.
probe_dc aws:us-east-1, aws:eu-west-1 및 기타 관리 또는 프라이빗 위치 테스트가 실행되는 위치. 다중 위치 테스트는 할당된 각 위치에 대해 하나의 probe_dc 태그를 가져요.
ci_execution_rule blocking, non_blocking 테스트의 CI/CD 실행 규칙. 테스트가 CI/CD 파이프라인에서 품질 게이트로 사용될 때 추가돼요.

이 태그들은 테스트를 편집할 때 자동으로 업데이트되므로, 테스트가 위치를 이동하거나 일시 중지되거나 CI/CD 구성을 변경해도 검색이 정확하게 유지돼요. tag facet을 사용하고 전체 key:value 쌍을 따옴표로 묶어 태그를 검색하세요. 예:

  • type:synthetics tag:"check_status:live"는 모든 활성 Synthetic 테스트 모니터를 찾아요.
  • type:synthetics tag:("probe_dc:aws:us-east-1" AND "probe_dc:aws:ap-northeast-1")는 두 위치 모두에서 실행되는 테스트를 찾아요.
  • type:synthetics tag:"ci_execution_rule:blocking"은 실패 시 CI/CD 파이프라인을 차단하도록 구성된 테스트를 찾아요.

모니터 알림 맞춤 구성

사고 관리 전략에 따라 Synthetic 테스트가 알림을 보낼 때 여러 팀을 참여시키고 싶을 수 있어요. 첫 알림 이후의 후속 알림에서만 Team B에 알리려면 Team B에 대한 알림을 {{#is_renotify}}와 {{/is_renotify}로 감싸세요. conditional variables을 사용해 모니터 속성에 따라 알림 메시지를 추가로 특성화하세요.

{% image source="https://docs.dd-static.net/images/synthetics/guide/synthetics_test_monitors/renotification_toggle_2.d00fc5849b1837c7d52329abea61d58f.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/synthetics/guide/synthetics_test_monitors/renotification_toggle_2.d00fc5849b1837c7d52329abea61d58f.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Select the amount of time for the alerting monitor to renotify" /%}

Renotification을 활성화하려면 Enable renotification을 토글하고 드롭다운 메뉴에서 시간 간격을 선택하세요.

Synthetic Monitoring 알림이 테스트 결과를 평가하고 알림을 트리거하는 방법에 대한 자세한 내용은 Understanding Synthetic Monitor Alerting을 참고하세요.

향상된 알림

Synthetic 모니터를 사용하고 강화해 Synthetic Monitoring 테스트가 실패할 때 더 상세한 알림을 보낼 수 있어요. 다음 기능을 사용할 수 있어요.

{% dl %}

{% dt %} Pre-filled monitor messages {% /dt %}

{% dd %} 사전 채워진 모니터 메시지는 Synthetic 테스트 알림에 대한 구조화된 출발점을 제공해요. 각 메시지에는 테스트 메타데이터를 포함하는 표준화된 제목, 요약, 바닥글(footer)이 포함되어 있어 알림을 한눈에 이해하기 쉬워요. {% /dd %}

{% dt %} Template variables {% /dt %}

{% dd %} 템플릿 변수를 사용하면 테스트 특정 데이터를 모니터 알림에 동적으로 주입할 수 있어요. 이 변수들은 synthetics.attributes 객체에서 가져와요. {% /dd %}

{% dt %} Advanced usage {% /dt %}

{% dd %} 고급 사용법에는 더 깊은 테스트 인사이트를 표면화하거나 handlebars 템플릿을 사용해 복잡한 메시지를 구성하는 기법이 포함돼요. {% /dd %}

{% dt %} Conditional alerting {% /dt %}

{% dd %} 조건부 알림을 사용하면 특정 테스트 결과나 실패 조건에 따라 모니터 알림의 내용을 변경할 수 있어요. {% /dd %}

{% /dl %}

자세한 내용은 Synthetic Monitoring notifications를 참고하세요.

Bits Investigation 시작

Synthetic Browser 또는 API 테스트 모니터가 알림 상태에 들어가면 Bits Investigation을 시작해 근본 원인을 식별할 수 있어요. Bits Investigation은 테스트 결과, 트레이스, 로그, 메트릭을 분석해 근본 원인을 표면화하고 실패가 회귀인지 오설정인지 플래그를 지정해요. 또한 Synthetic 모니터에서 Auto-Investigate를 토글해 알림을 보낼 때 조사를 자동으로 시작할 수도 있어요.

모범 사례

  • 메시지가 누락되지 않도록 항상 기본 @notification(조건 밖)을 포함하세요.
  • 복구에 일관된 라우팅이 필요한 PagerDuty 같은 페이징 도구에는 복잡한 로직을 피하세요.
  • 조건부 로직을 사용해 알림 텍스트를 재정의하고, 우선순위를 변경하며, 팀 간에 알림을 분할하세요.

더 알아보기 (Learn more)

추가로 도움이 되는 문서, 링크, 아티클: