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

로그 모니터

원문 보기 위키 갱신

로그는 보안 조사, 위협 탐지, 컴플라이언스 추적, 보안 모니터링에 필수적이에요. Log Management는 로그를 관측 가능성 데이터와 연관시켜 신속한 근본 원인 탐지를 돕지요. 로그 모니터를 사용하면 지정된 로그 유형이 일정 기간 동안 사용자 정의 임계값을 초과할 때 알림을 받을 수 있어요.

출처: 문서

본문

개요

로그는 보안 조사에 필수적이며, 위협 탐지, 컴플라이언스 추적, 보안 모니터링을 돕는 요소예요. Log Management 시스템은 로그를 관측 가능성 데이터와 연관시켜 신속한 근본 원인 탐지를 지원해요. 로그 관리는 또한 효율적인 문제 해결, 이슈 해결, 보안 감사도 가능하게 해줘요.

조직에 대해 log management가 활성화되면, 지정된 로그 유형이 일정 기간 동안 사용자 정의 임계값을 초과할 때 알림을 보내는 로그 모니터를 만들 수 있어요. 로그 모니터는 인덱싱된 로그(indexed logs)만 평가해요.

참고: 로그 모니터는 최대 롤링 시간 창이 2 days예요.

모니터 생성

Datadog에서 로그 모니터를 만들려면 메인 네비게이션을 사용하세요: Monitors > New Monitor > Logs.

{% alert level="info" %} 계정당 기본 로그 모니터 제한은 1000개예요. 이 제한에 도달했다면 multi alerts 사용을 고려하거나, Support에 문의하세요. {% /alert %}

검색 쿼리 정의

검색 쿼리를 정의하면 검색 필드 위의 그래프가 업데이트돼요.

  1. Log Explorer search와 동일한 로직으로 검색 쿼리를 구성하세요. Log Explorer에 표시될 수 있는 Flex Tier 로그는 모니터에서 지원되지 않는다는 점에 유의하세요. Standard Tier 로그만 지원돼요.

  2. 로그 개수, facet, 속성, 또는 measure 중 무엇을 모니터링할지 선택하세요.

    • 로그 개수 모니터링: 검색 바를 사용하고(선택 사항) 속성이나 measure를 선택하지 마세요. Datadog는 선택한 시간 범위 동안의 로그 수를 평가한 다음 임계값 조건과 비교해요.
    • facet 또는 속성 모니터링: 속성이 선택되면 모니터는 속성의 고유 값 개수(Unique value count)에 대해 알림을 보내요. 예를 들어 user.email 같은 속성이 있다면, 고유 값 개수는 고유 사용자 이메일 수예요. 모든 속성을 모니터에 사용할 수 있지만, 자동 완성에는 facet만 표시돼요.
    • measure 모니터링: measure가 선택되면 모니터는 로그 facet의 숫자 값(메트릭 모니터와 유사)에 대해 알림을 보내며, 집계(min, avg, sum, median, pc75, pc90, pc95, pc98, pc99, 또는 max)를 선택해야 해요.
  3. 로그를 여러 차원으로 그룹화하세요(선택 사항):

Datadog는 쿼리와 일치하는 모든 로그를 태그, 속성, 최대 네 개의 facet 값에 따라 그룹으로 집계해요. 여러 차원이 있을 때 상위 값은 첫 번째 차원에 따라 결정된 다음, 첫 번째 차원의 상위 값 내에서 두 번째 차원에 따라 결정되고, 마지막 차원까지 이어져요. 차원 제한은 총 차원 수에 따라 달라져요.

  • 1개 facet: 상위 1000개 값
  • 2개 facet: facet당 상위 30개 값(최대 900개 그룹)
  • 3개 facet: facet당 상위 10개 값(최대 1000개 그룹)
  • 4개 facet: facet당 상위 5개 값(최대 625개 그룹)

로그 모니터에 여러 쿼리나 수식이 정의된 경우 각 차원에 대해 상위 또는 하위 값의 수를 선택할 수 있어요.

총 제한은 facet 수와 관계없이 상위 1000개 값이에요. 이것을 1000보다 크게 늘리면, Datadog는 결과 조합 수가 1000 미만이 되도록 다른 차원의 상위 값을 조정해요. 모든 group-by의 기본 상위 값은 10이며, 네 번째는 기본적으로 상위 5개 값으로 설정된다는 점이 예외예요.

예를 들어, 검색 쿼리에 네 개의 그룹화가 있는 로그 모니터는 다음을 가질 수 있어요.

  • 첫 번째 facet: 상위 10개 값
  • 두 번째 facet: 상위 10개 값
  • 세 번째 facet: 상위 5개 값
  • 네 번째 facet: 상위 2개 값
  1. 선택적으로 Σ Modify Query 메뉴를 사용해 다음으로 쿼리를 세부 조정할 수 있어요.

    • 함수와 수식: 쿼리 결과를 변환하고 결합하세요. functions 및 formulas를 참고하세요.
    • 고급 검색: 엔티티 목록, 고객 등급, 상관 이벤트 같은 큐레이션된 데이터셋으로 알림 범위를 한정하세요. subqueries 및 Reference Tables를 참고하세요.

또한 Log Explorer의 고급 검색에서 직접 모니터를 만들 수도 있어요.

  1. 알림 그룹화 전략을 구성하세요(선택 사항).

    • Simple-Alert: 단순 알림은 모든 보고 소스에 대해 집계해요. 집계 값이 설정된 조건을 충족하면 하나의 알림을 받아요. 이는 단일 호스트의 메트릭이나 여러 호스트에 걸친 메트릭 합계를 모니터링할 때 가장 잘 작동해요. 이 전략을 선택해 알림 노이즈를 줄일 수 있어요.
    • Multi Alert: 다중 알림은 그룹 매개변수에 따라 각 소스에 알림을 적용해요. 설정된 조건을 충족하는 각 그룹에 대해 알림 이벤트가 생성돼요. 예를 들어 system.disk.in_use를 device로 그룹화하면 공간이 부족해지는 각 디바이스에 대해 별도의 알림을 받을 수 있어요.

알림 조건 설정

쿼리가 임계값과 비교해 다음 조건 중 하나를 충족하면 트리거되도록 설정하세요.

  • above
  • above or equal to
  • below
  • below or equal to
  • equal to
  • not equal to

데이터 없음 및 아래 알림

NO DATA는 시간 범위 동안 모니터 쿼리와 일치하는 로그가 없을 때 주어지는 상태예요.

특정 쿼리와 일치하는 모든 그룹이 로그 전송을 중단했을 때 알림을 받으려면 조건을 below 1로 설정하세요. 이는 주어진 시간 범위 내 모든 집계 그룹에서 모니터 쿼리와 일치하는 로그가 없을 때 알림을 보내요.

모니터를 어떤 차원(태그 또는 facet)으로 분할하고 below 조건을 사용하면, 특정 그룹에 로그가 있고 개수가 임계값보다 낮을 때—또는 모든 그룹에 로그가 없을 때에만 알림이 트리거돼요.

예시:

고급 알림 조건

고급 알림 옵션(evaluation delay, new group delay 등)에 대한 자세한 지침은 Monitor configuration 페이지를 참고하세요.

알림

Configure notifications and automations 섹션에 대한 자세한 지침은 Notifications 페이지를 참고하세요.

로그 샘플 및 위반 값 toplist

로그 모니터가 트리거되면 알림 메시지에 샘플 또는 값을 추가할 수 있어요. 메시지가 없는 로그는 샘플에 포함되지 않아요. 로그 속성의 내용을 모니터 메시지에 추가하려면 모니터 메시지 본문에 직접 로그 모니터 template variables를 사용하세요.

모니터 설정 알림 메시지에 추가 가능
Ungrouped Simple-Alert Log count 최대 10개 로그 샘플.
Grouped Simple-Alert Log count 최대 10개 facet 또는 measure 값.
Grouped Multi Alert Log count 최대 10개 로그 샘플.
Ungrouped Simple-Alert measure 최대 10개 로그 샘플.
Grouped Simple-Alert measure 최대 10개 facet 또는 measure 값.
Grouped Multi Alert Log measure 최대 10개 facet 또는 measure 값.

이들은 Slack, Jira, webhooks, Microsoft Teams, Pagerduty, 이메일로 전송되는 알림에서 사용할 수 있어요. 참고: 복구 알림에는 샘플이 표시되지 않아요.

로그 샘플을 비활성화하려면 Configure notification & automations 섹션 하단의 확인란을 선택 해제하세요. 확인란 옆의 텍스트는 모니터 그룹화에 기반해요(위에서 설명한 대로).

예시

상위 10개 위반 값 테이블 포함:

{% image source="https://docs.dd-static.net/images/monitors/monitor_types/log/top_10_breaching_values.9563d9f6aa0e9cfe91e405c4518f828a.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/monitors/monitor_types/log/top_10_breaching_values.9563d9f6aa0e9cfe91e405c4518f828a.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Top 10 breaching values" /%}

알림에 10개 로그 샘플 포함:

{% image source="https://docs.dd-static.net/images/monitors/monitor_types/log/10_sample_logs.600b566427b0f15bc8ccb3e8432884c0.png?auto=format&fit=max&w=850 1x, https://docs.dd-static.net/images/monitors/monitor_types/log/10_sample_logs.600b566427b0f15bc8ccb3e8432884c0.png?auto=format&fit=max&w=850&dpr=2 2x" alt="Top 10 breaching values" /%}

더 알아보기 (Learn more)

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