On Missing Data 구성으로 마이그레이션하기

개요

메트릭 모니터는 누락된 데이터를 처리하기 위한 향상된 옵션을 제공하여 누락된 데이터를 실패 모드와 정상 상태로 구분할 수 있도록 합니다.

이러한 옵션은 Logs, Events, CI, Database, Error Tracking 등 다른 모니터 유형에서 사용할 수 있는 옵션과 동일합니다.

On Missing Data 옵션 사용의 이점

오류와 같은 불량 이벤트 수를 측정할 때 데이터가 탐지되지 않을 경우 모니터에 “OK"가 표시되어야 합니다. 기존 No Data 구성을 사용하면 모니터는 No Data를 보고했습니다. On Missing Data 구성 옵션을 사용하면 모니터가 상태를 더 정확하게 반영하므로 명확성을 향상시킬 수 있습니다.

UI를 통해 관리되는 모니터

UI에서 모니터를 관리하는 경우, 다음에 모니터를 편집할 때 구성이 자동으로 업데이트됩니다. On Missing Data 구성을 더 빨리 업데이트하려면 API를 통한 조정에 관한 다음 섹션을 참조하세요.

API 또는 Terraform을 통해 관리되는 모니터

API 또는 Terraform으로 모니터를 관리하는 경우 notify_no_data 및 no_data_timeframe을 on_missing_data로 교체하세요. on_missing_data가 시간 창과 동일한 시간 프레임을 사용하므로 no_data_timeframe 파라미터는 필요하지 않습니다.

API 파라미터

기존 No Data 파라미터인 notify_no_data는 기존 모니터에서 계속 사용할 수 있으며, 새로운 on_missing_data 기능으로 자동 업그레이드되지 않습니다.

파라미터UI 설명
"on_missing_data": "show_and_notify_no_data"데이터가 누락된 경우 Show NO DATA and notify로 처리됩니다.
(이전 명칭: “Notify if data is missing”)
"on_missing_data": "show_no_data"데이터가 누락된 경우 Show NO DATA로 처리됩니다.
(이전 명칭: “Do not notify if data is missing”)
"on_missing_data": "resolve"데이터가 누락된 경우 Show OK로 처리됩니다.
"on_missing_data": "default"(합계 또는 카운트 집계를 사용하는 경우)데이터가 누락된 경우 Evaluate as 0으로 처리됩니다. (또는 기타 기본값)
"on_missing_data": "default"(다른 모든 집계 유형을 사용하는 경우)데이터가 누락된 경우 Show last known status로 처리됩니다.

사용 가능한 모든 필드는 API 설명서를 참조하세요.

다음은 해당 필드를 사용하는 JSON 모니터의 변경 전후 예시입니다.

변경 전

{ 
  "name": "CPU usage is high for host $host.value",  
    "type": "query alert",  
    "query": "avg(last_5m):100 - avg:system.cpu.idle{$host} > 90",  
    "message": "A high CPU usage has been detected for host $host.value, which can impact the system performance.",  
    "tags": [],  
    "options": {  
        "thresholds": { "critical": 90 },  
        "notify_audit": false,  
        "include_tags": false,  
        "notify_no_data": true,  
        "no_data_timeframe": 10  
    }  
}

변경 후

{
  "name": "CPU usage is high for host $host.value",  
    "type": "query alert",  
    "query": "avg(last_5m):100 - avg:system.cpu.idle{$host} > 90",  
    "message": "A high CPU usage has been detected for host $host.value, which can impact the system performance.",  
    "tags": [],  
    "options": {  
       "thresholds": { "critical": 90 },  
       "notify_audit": false,  
       "include_tags": false,  
       "on_missing_data": "show_and_notify_no_data"  
    }  
}  

모니터 기반 SLO

SLO는 다음 매핑에 따라 가동 시간과 가동 중지를 처리합니다.

On Missing Data 구성모니터 상태SLO 처리 방식
Show OKOK가동 시간
Show No DataNo Data가동 시간
Show No Data and NotifyNo Data가동 중지
Show last known status마지막 상태OK인 경우, 가동 시간
Alert인 경우, 가동 중지
Evaluate as zero임계값 구성에 따라 다름OK인 경우, 가동 시간
Alert인 경우, 가동 중지

추가 자료

추가적인 유용한 설명서, 링크 및 기사: