모니터 모범 사례
모니터 모범 사례 (Monitor Best Practices)
잘 설계된 모니터는 인프라나 애플리케이션의 성능, 상태, 안정성을 이해하는 데 필수적이에요. 모니터는 문제를 조기에 감지하고, 성능을 최적화하고, 원활한 운영을 유지하기 위한 정확하고 실행 가능한 데이터를 제공해요.
이 가이드는 효과적인 모니터를 만드는 핵심 측면을 안내해요:
- 직관적인 모니터 만들기
- 적절한 임계값 설정하기
- 실행 가능한 대응 체계 구축하기
이 원칙들을 따르면 의미 있는 인사이트를 전달하고 사전 예방적 의사 결정을 지원하는 모니터를 만들 수 있어요.
출처: 문서
본문
명확한 제목 작성하기 (Write a clear title)
Manage Monitor 페이지에는 모니터의 제목, 태그, 팀, 기타 필드가 표시돼요. 속성의 전체 목록은 모니터 검색(Search Monitors) 문서를 참고해요. 명확하고 설명적인 제목이 중요한 이유는 모니터의 목적과 추적하는 대상을 즉시 전달하기 때문이에요. 잘 정의된 제목은 사용자가 모니터의 초점을 빠르게 식별하게 해줘요. 또한 명확한 제목은 역할이나 페르소나에 관계없이 모든 팀원이 한눈에 모니터의 기능을 이해할 수 있게 해줘요.
참고: 모니터 제목과 알림 제목(subject)은 동일하므로, 둘 중 어느 쪽에든 변수를 너무 많이 추가하지 않도록 해요.
Multi-alert 사용하기 (Use multi-alert)
중복된 모니터(예: 스코프 하나만 바뀐 여러 유사한 모니터)를 피하려면 Datadog는 multi-alert 모니터 사용을 권장해요. 쿼리에 group by를 사용하면 multi-alert는 그룹 파라미터를 기반으로 각 소스에 경보를 자동으로 적용해요. 가장 좋은 방법은 host로 그룹화된 모니터를 사용해, 각 호스트가 임계값을 넘을 때마다 별도의 경보를 트리거하는 모니터 하나만 두는 거예요.
예를 들어: 이커머스 웹사이트를 운영하고 있고, 대량의 트래픽이나 처리를 다루기 위해 여러 호스트를 배포하고 로드 밸런서로 들어오는 요청을 균등하게 분산하고 있다고 해볼게요. 어떤 단일 호스트도 과부하되지 않도록, 호스트가 특정 CPU 및 메모리 임계값을 초과하면 경보를 받고 싶어요. 이렇게 하면 어떤 단일 호스트도 과부하되지 않아 트래픽과 처리가 균형 있게 유지돼요.
컨텍스트 제공하기 (Give context)
모니터에 컨텍스트를 추가하면 원시 데이터를 실행 가능한 인사이트로 바꿔줘요. 컨텍스트는 소유권과 영향을 명확히 해서 사용자가 모니터가 무엇에 영향을 미치는지 이해하게 해줘요. 또한 컨텍스트는 잠재적 원인을 더 명확하게 보여줘 더 나은 의사 결정을 가능하게 하여 문제 해결을 빠르게 해줘요. 간단히 말해, 컨텍스트는 모니터링을 더 정확하고 유용하게 만들며 실제 상황에 민감하게 대응하게 해줘요.
Datadog에는 모니터 컨텍스트를 향상시키는 기능이 3가지 있어요:
-
메타데이터(Metadata): 경보 알림에 우선순위, 태그, 팀 정보를 추가해요. 이 컨텍스트는 팀이 이슈를 빠르게 필터링, 우선순위화, 라우팅하는 데 도움을 줘요. 알림의 성격을 명확히 하고 관련 알림을 그룹화하는 데도 도움이 돼요. 이는 경보 관리와 해결을 더 효율적이고 효과적으로 만들어요.
-
변수(Variables): 모니터 메시지에서 변수를 사용해 정확한 컨텍스트를 추가하고, 영향을 받은 시스템, 오류 메시지, 초과된 임계값 같은 동적이고 실시간인 세부 정보를 제공해요. 이런 구체성 덕분에 알림이 더 명확해지고, 대응자가 추가 정보를 검색할 필요가 줄어들어 더 빠른 조치가 가능해져요. 또한 변수는 경보 구조의 일관성을 보장해 가독성과 대응 효율을 높여줘요.
모니터 품질 (Monitor quality)
모니터가 잘 구성됐는지 확인하려면 Monitor Quality를 사용해요. 모니터링 구성의 일반적인 잘못된 설정을 잡아내는 사전 정의된 규칙을 기반으로 개선이 필요한 모니터를 식별해줘요.
자세한 내용은 Monitor Quality 문서를 참고해요.
모니터 템플릿 (Monitor templates)
모니터를 만들 때 어디서 시작해야 할지 모르겠다면 Datadog의 사전 구축된 Monitor Templates를 사용해요. 제목, 알림, 메트릭, 임계값에 대한 지침을 제공해요.
자세한 내용은 Monitor templates 문서를 참고해요.