개요

IMCP 테스트를 사용하면 호스트 사용량을 모니터링하고 네트워크 통신 문제를 진단할 수 있습니다. ICMP Ping 하나나 두 개에서 받은 값을 엔드포인트에 어설션하면 Datadog에서 연결 문제, 지정 시간보다 긴 왕복 대기 시간, 보안 방화벽 구성 내 예상치 못한 변경 사항 등을 감지할 수 있습니다. 또 호스트에 연결하는 데 필요한 네트워크 홉(TTL) 수를 추적할 수 있고, 추적 경로를 확인하여 각 네트워크 홉과 경로의 상세 정보를 찾을 수 있습니다.

ICMP Ping을 외부에서 트리거하느냐 혹은 네트워크 내부에서 트리거하느냐에 따라 ICMP 테스트를 [관리형]](#select-locations)과 프라이빗 위치에서 실행할 수 있습니다. 정의한 일정에 따라 ICMP 테스트를 실행하거나 온디맨드로 실행할 수 있고, 또는 CI/CD 파이프라인 내에서 실행할 수도 있습니다.

구성

ICMP 테스트를 생성한 후 테스트 요청을 정의하세요.

요청 정의하기

  1. 테스트를 실행할 환경의 Domain Name이나 IP 주소를 지정하세요.
  2. Track number of network hops (TTL) 사용 여부를 선택하세요. 이 기능을 사용하면 “추적 경로” 프로브가 활성화되어 호스트 대상으로 가는 게이트웨이와 경로를 모두 찾을 수 있습니다.
  3. Number of Pings를 테스트 세션별로 트리거되도록 선택하세요. Ping 개수의 기본 값은 네 개입니다. 이 수치를 줄이거나 최대 10개까지로 올릴 수 있습니다.
  4. 내 ICMP 테스트의 이름을 지정하세요.
  5. 내 ICMP 테스트에 env 및 기타 태그를 추가하세요. 그런 다음 이 태그를 사용해 Synthetic Monitoring & Continuous Testing page 신서틱 테스트를 필터링할 수 있습니다.
ICMP 요청 정의

URL 테스트를 클릭하여 요청 설정을 테스트합니다. 화면 오른쪽에 응답 미리보기가 표시됩니다.

어설션 정의

어설션은 예상되는 테스트 결과를 정의합니다. Test URL을 클릭하면 latency, packet loss, packet received의 기본 어설션과 사용 가능한 레코드가 추가됩니다. 테스트에서 모니터링을 시작하려면 어설션을 최소 한 개 정의해야 합니다.

유형집계연산자값 유형
대기 시간avg, max, min, 또는 stddev (jitter)is less than, is less than or equal,
is, is more than, is more than or equal
정수(ms)
패킷 손실-is less than, is less than or equal, is, is more than, is more than or equal비율(%)
수신한 패킷-is less than, is less than or equal, is, is more than, is more than or equal정수
네트워크 홉-is less than, is less than or equal, is, is more than, is more than or equal정수

New Assertion을 선택하거나 응답 미리 보기를 바로 선택해 API 테스트별로 어설션을 최대 20개까지 만들 수 있습니다.

ICMP 테스트가 성공 또는 실패하는 어설션 정의

테스트에 응답 본문 어설션이 포함되어 있지 않으면 본문 페이로드가 삭제되고 Synthetics Worker가 설정한 제한 시간 내에서 요청 관련 응답 시간을 반환합니다.

테스트에 응답 본문에 대한 어설션이 포함되어 있고 제한 시간에 도달하면, Assertions on the body/response cannot be run beyond this limit 오류가 나타납니다.

위치 선택

ICMP 테스트를 실행할 Locations를 선택합니다. ICMP 테스트는 사용자가 트리거를 네트워크 외부 또는 내부에서 일으키고자 하느냐에 관리형 위치와 프라이빗 위치 모두에서 실행될 수 있습니다.

Datadog’s out-of-the-box managed locations allow you to test public-facing websites and endpoints from regions where your customers are located.

AmericasAPACEMEA
Canada Central (AWS)Hong Kong (AWS)Cape Town (AWS)
Northern California (AWS)Mumbai (AWS)Frankfurt (AWS)
Northern Virginia (AWS)Seoul (AWS)Ireland (AWS)
Ohio (AWS)Singapore (AWS)London (AWS)
Oregon (AWS)Sydney (AWS)Paris (AWS)
São Paulo (AWS)Tokyo (AWS)Stockholm (AWS)
Virginia (Azure)Osaka (AWS)Milan (AWS)
Jakarta (AWS)Bahrain (AWS)

The Datadog for Government site (US1-FED) uses the following managed location:

Americas
US-West

테스트 빈도 지정

ICMP 테스트를 다음과 같이 실행할 수 있습니다.

  • 일정에 따라 실행하면 사용자가 가장 중요한 서비스에 항상 액세스할 수 있도록 보장합니다. Datadog에서 ICMP 테스트를 실행할 빈도를 선택하세요.
  • CI/CD 파이프라인 내에서 실행할 수 있습니다.
  • 온디맨드로 실행하면 팀에 가장 적합한 시간에 테스트를 실행할 수 있습니다.

Define alert conditions

Set alert conditions to determine the circumstances under which you want a test to fail and trigger an alert.

Alerting rule

When you set the alert conditions to: An alert is triggered if any assertion fails for X minutes from any n of N locations, an alert is triggered only if these two conditions are true:

  • At least one location was in failure (at least one assertion failed) during the last X minutes;
  • At one moment during the last X minutes, at least n locations were in failure.

Fast retry

Your test can trigger retries X times after Y ms in case of a failed test result. Customize the retry interval to suit your alerting sensibility.

Location uptime is computed on a per-evaluation basis (whether the last test result before evaluation was up or down). The total uptime is computed based on the configured alert conditions. Notifications sent are based on the total uptime.

Configure the test monitor

A notification is sent by your test based on the alerting conditions previously defined. Use this section to define how and what to message your team.

  1. Similar to how you configure monitors, select users and/or services that should receive notifications either by adding an @notification to the message or by searching for team members and connected integrations with the dropdown menu.

  2. Enter the notification message for your test. This field allows standard Markdown formatting and supports the following conditional variables:

    Conditional VariableDescription
    {{ #is_alert }}Show when the test alerts.
    {{ ^is_alert }}Show unless the test alerts.
    {{ #is_recovery }}Show when the test recovers from alert.
    {{ ^is_recovery }}Show unless the test recovers from alert.
    {{ #is_renotify }}Show when the monitor renotifies.
    {{ ^is_renotify }}Show unless the monitor renotifies.
    {{ #is_priority }}Show when the monitor matches priority (P1 to P5).
    {{ ^is_priority }}Show unless the monitor matches priority (P1 to P5).
  3. Specify how often you want your test to re-send the notification message in case of test failure. To prevent renotification on failing tests, leave the option as Never renotify if the monitor has not been resolved.

  4. Click Create to save your test configuration and monitor.

For more information, see Using Synthetic Test Monitors.

Variables

Create local variables

To create a local variable, click Create a Local Variable. You can select one of the following available builtins to add to your variable string:

{{ numeric(n) }}
Generates a numeric string with n digits.
{{ alphabetic(n) }}
Generates an alphabetic string with n letters.
{{ alphanumeric(n) }}
Generates an alphanumeric string with n characters.
{{ date(n unit, format) }}
Generates a date in one of Datadog’s accepted formats with a value corresponding to the UTC date the test is initiated at + or - n units.
{{ timestamp(n, unit) }}
Generates a timestamp in one of Datadog’s accepted units with a value corresponding to the UTC timestamp the test is initiated at +/- n units.
{{ uuid }}
Generates a version 4 universally unique identifier (UUID).
{{ public-id }}
Injects the Public ID of your test.
{{ result-id }}
Injects the Result ID of your test run.

To obfuscate local variable values in test results, select Hide and obfuscate variable value. Once you have defined the variable string, click Add Variable.

변수 사용

내 ICMP 테스트의 URL과 어설션에 Settings 페이지에서 정의한 전역 변수를 사용할 수 있습니다.

변수 목록을 표시하려면 원하는 필드에 {{를 입력하세요.

테스트 실패

하나 이상의 어설션을 충족하지 않거나 요청이 초기에 실패한 경우 테스트 결과가 FAILED가 됩니다. 경우에 따라서는 엔드포인트 어설션 테스트 없이 해당 테스트가 실패할 수 있습니다.

다음과 같은 이유로 실패할 수 있습니다.

DNS
테스트 URL의 DNS 항목을 찾을 수 없는 경우입니다. 가능한 원인으로는 테스트 URL이 잘못 설정되었거나 DNS 엔티티 설정이 잘못되었기 때문일 수 있습니다.

권한 허용

기본적으로 [Datadog Admin 및 Datadog Standard 역할][13]이 있는 사용자만 Synthetic ICMP 테스트를 생성, 편집, 삭제할 수 있습니다. Synthetic ICMP 테스트의 생성, 편집, 삭제 액세스 권한을 얻으려면 사용자를 두 가지 [기본 역할][13] 중 하나로 업그레이드하세요.

커스텀 역할 기능을 사용하는 경우 synthetics_readsynthetics_write 권한이 포함된 사용자 정의 역할에 사용자를 추가하세요.

액세스 제한

계정에서 사용자 정의 역할을 사용하는 고객에게는 액세스 제한이 제공됩니다.

조직 역할에 따라 ICMP 테스트의 액세스를 제한할 수 있습니다. ICMP 테스트를 생성할 때 사용자 외에 테스트를 읽고 쓸 수 있는 역할을 선택합니다.

테스트에 대한 권한 설정

참고 자료

PREVIEWING: esther/docs-8632-slo-blog-links