본문으로 건너뛰기

복합 로그 이벤트 설정

홈 > 프로젝트 선택 > 알림 아이콘 경고 알림 > 이벤트 설정 > 복합 로그

수집한 로그 데이터를 조건에 맞춰 필터링하려 경고 알림을 설정할 수 있습니다. 로그 이벤트를 사용하려면 로그 모니터링이 활성화되어야 합니다. 로그 모니터링 활성화에 대한 자세한 내용은 (각 제품 로그 문서 링크)를 참고하세요.

  • 복합 로그 이벤트: 설정한 데이터 조회 범위 내 로그를 기준으로, 로그 검색 조건을 충족하는 로그 수가 임계 개수 이상일 경우 이벤트가 발생합니다.
노트

권한

복합 메트릭스 이벤트를 설정하려면 알림 설정 권한이 필요합니다. 알림 설정 권한은 홈 화면 > 프로젝트 선택 > 관리 > 통합 멤버 관리에서 권한을 부여할 멤버의 수정 아이콘 아이콘을 클릭해 설정할 수 있습니다.

기본 옵션

  • 검색: 이벤트 이름 또는 이벤트 수신 태그를 선택해 원하는 이벤트 검색

  • JSON 다운로드/업로드: 이벤트 규칙은 JSON 편집기를 통해 바로 수정하거나, 파일로 다운로드하여 수정 후 다시 업로드 가능

  • 알림 메시지 설정: 수신할 메시지의 상세 항목 선택 및 항목 별 내용 편집

  • + 이벤트 추가: 새로운 로그 이벤트 추가

    표 | 복합 로그 이벤트 목록 구성
    항목설명
    이벤트 이름알림 제목으로 사용될 이벤트 이름
    템플릿복합 로그 템플릿
    카테고리로그 구분 명칭(로그 폴더명)
    규칙이벤트 발생하는 조건
    이벤트 상태가 해소되면 추가 알림CriticalWarning 레벨의 이벤트가 해소되면 정상(RECOVERED) 상태의 알림 수신 여부
    - 활성화: 진행 중 → 정상 상태로 전환될 때 RECOVERED 알림을 보내며, 이벤트 기록에서 진행 중/해소 상태를 구분해 볼 수 있음
    - 비활성화: 임계값을 초과할 때 마다 단발성 이벤트 발생
    이벤트 발생 일시 중지이벤트 알림 발생 후, 같은 이벤트 발생을 일정 시간 동안 멈춤
    - 선택 가능 시간: 사용 안 함, 5분, 10분, 15분, 20분, 30분, 1시간, 2시간, 3시간, 6시간, 12시간, 1일
    - 해소된 알림이 활성화된 경우, 정상(RECOVERED) 상태 알림을 받은 후 선택한 시간 동안 같은 이벤트가 발생해도 알림이 발생하지 않음
    인터벌로그 데이터를 조회할 시간 범위
    이벤트 수신 태그해당 이벤트 알림을 받을 사용자 또는 그룹(수신 태그)
    수정 아이콘이벤트 수정 및 삭제
    토글 비활성화 아이콘이벤트의 활성화 여부
    - 활성화: 조건을 충족하면 이벤트 발생
    - 비활성화: 이벤트가 동작하지 않으며, 조건을 검사하지 않음

이벤트 설정

복합 로그 이벤트는 설정한 데이터 조회 범위 내 로그를 기준으로, 로그 검색 조건을 충족하는 로그 수가 임계 개수 이상일 경우 경고 알림을 설정할 수 있는 기능입니다.

복합 로그 이벤트 추가

  1. 경고 알림 > 이벤트 설정복합 로그 탭을 클릭하세요.

  2. 화면 오른쪽의 [ + 이벤트 추가 ] 버튼을 클릭하세요.

  3. 이벤트 규칙 추가 창에서 로그 이벤트 조건을 설정하세요. 자세한 내용은 기본 설정, 상세 설정, 추가 설정를 참고하세요.

    복합 로그 이벤트 추가

  4. 이벤트 규칙 추가 창에서 설정이 완료되면 [ 저장 ] 버튼을 클릭하세요.

기본 설정

  • 이벤트 이름: 이벤트 제목으로 사용할 이름을 입력하세요.

  • 이벤트 활성화: 토글 버튼 활성화 시, 조건을 충족하면 이벤트 발생합니다.

  • 레벨: 이벤트 레벨(Critical, Warning, Info)을 선택하세요.

상세 설정

템플릿(프리셋), 메시지, 카테고리, 필터, 이벤트 발생 조건 항목을 설정합니다.

템플릿(프리셋)

미리 정의된 프리셋을 선택하면 필터, 쿼리 타입, 이벤트 발행 조건이 자동으로 설정됩니다. 프리셋을 선택한 후 필요에 맞게 수정할 수 있습니다.

복합 로그 템플릿 유형
프리셋쿼리 타입기본 규칙
사용 안 함nonerows > 10
2xx 상태코드 건수countcount > 10
3xx 상태코드 건수countcount > 10
4xx 상태코드 건수countcount > 10
5xx 상태코드 건수countcount > 10
정상 상태코드(2xx, 3xx) 건수count_v2include_minus_exclude_count > 10
에러 상태코드(4xx, 5xx) 건수count_v2include_minus_exclude_count > 10
에러 수신 건수countcount > 10
예외 수신 건수countcount > 10
초당 로그 발생건수rpsrps > 100
필드 집계 (Aggregation)aggravg > 1000
비율 (Rate)raterate > 10
고유값 수 (Cardinality)cardinalitycardinality > 100
백분위 (Percentile)percentilep99 > 3000
메시지

이벤트 발생 시 전달받을 알림 메시지를 입력하세요. 메시지에 변수를 사용하여 동적 메시지를 구성할 수 있습니다.

  • 예시: 메시지 ${host}에서 에러 ${count}건 발생 → 알림 메시지 web-01에서 에러 15건 발생
표 | 메시지 변수
변수설명사용 조건
${count}조건에 맞는 로그 건수항상 사용 가능
${groupField}그룹화 필드 이름그룹화 알림만
${groupValue}그룹화 필드 값그룹화 알림만
${필드명}그룹화 필드 값 (필드명으로 직접 참조)그룹화 알림만
노트

${count} 변수는 그룹화 여부와 관계없이 모든 알림에서 사용할 수 있습니다. ${groupField}, ${groupValue}, ${필드명} 변수는 그룹화 필드를 설정한 경우에만 치환됩니다.

카테고리

로그 구분 명칭(로그 폴더명)을 목록에서 선택하거나 직접 입력하세요. 카테고리를 선택해야 검색 키와 검색 값을 입력할 수 있습니다.

필터

Lucene 쿼리 문법으로 로그 검색 조건을 입력합니다. 두 가지 입력 모드를 지원합니다.

  • 필터 모드 쿼리 검색 아이콘: 필드와 값을 선택하여 쿼리를 구성합니다.

  • 코드 모드 쿼리 검색 아이콘: Lucene 쿼리를 직접 입력합니다.

    표 | Lucene 쿼리 예시
    쿼리설명
    level:ERRORlevel 필드가 ERROR인 로그
    status_nxx:status_4xx OR status_nxx:status_5xx4xx 또는 5xx 상태코드
    appender:accessLogaccessLog appender의 로그
    response_time.n:*response_time.n 필드가 존재하는 로그
    host:web-01 AND level:ERRORweb-01 호스트의 에러 로그
이벤트 발생 조건

쿼리 타입별로 설정합니다. 선택한 템플릿(프리셋) 또는 쿼리 타입에 따라 추가 설정 항목이 표시됩니다.

표 | 이벤트 발행 조건 키 의미
의미
rows / count필터 조건에 맞는 로그 건수
rps초당 로그 발생건수 (건수 / 인터벌 초)
avg대상 필드 값의 평균
sum대상 필드 값의 합계
min대상 필드 값의 최솟값
max대상 필드 값의 최댓값
rate분자 건수 / 분모 건수 × 100 (%)
cardinality대상 필드의 고유한 값 개수
p99 / p95 / p90 / p75 / p50대상 필드의 백분위 값
include_minus_exclude_count포함 필터 건수 - 제외 필터 건수
  • 건수 (count / none): 설정한 필터 조건에 맞는 로그의 건수를 카운트합니다.

    표 | 건수 설정 항목
    설정 항목설명
    필터로그 검색 조건 (Lucene 쿼리)
    이벤트 발행 조건건수 또는 조건에 맞는 로그 {연산자} {임계값} (예: count > 10)
  • 초당 로그 발생건수 (rps): 설정한 필터 조건에 맞는 로그의 초당 발생건수(Requests Per Second)를 계산합니다. 인터벌 시간 동안의 총 건수를 인터벌 초로 나누어 산출합니다.

    표 | 초당 로그 발생건수 설정 항목
    설정 항목설명
    필터로그 검색 조건 (Lucene 쿼리)
    이벤트 발행 조건RPS {연산자} {임계값} (예: rps > 0.5)
  • 필드 집계 (aggr): 지정한 숫자 필드의 집계 값(평균, 합계, 최솟값, 최댓값)을 계산합니다. 이벤트 발행 조건에서 집계 방식을 드롭다운으로 선택할 수 있습니다.

    표 | 필드 집계 설정 항목
    설정 항목설명
    필터로그 검색 조건 (Lucene 쿼리)
    대상 필드집계 대상 숫자 필드 (예: response_time.n)
    이벤트 발행 조건평균/합계/최솟값/최댓값 {연산자} {임계값} (예: avg > 1000)
  • 비율 (rate): 분자 필터와 분모 필터의 건수 비율(%)을 계산합니다. 전체 로그 대비 특정 조건의 비율을 모니터링할 때 유용합니다.

    표 | 비율 설정 항목
    설정 항목설명
    필터 (분자)비율 계산의 분자가 되는 로그 조건 (예: level:ERROR)
    분모 필터비율 계산의 분모가 되는 로그 조건 (예: level:*)
    이벤트 발행 조건비율 (%) {연산자} {임계값} (예: rate > 10)
    • 예시: 필터 level:ERROR, 분모 필터 level:*, rule rate > 10 → 전체 로그 중 에러 비율이 10%를 초과하면 알림 발생
  • 고유값 수 (cardinality): 지정한 필드의 고유한 값 개수를 계산합니다. 비정상적으로 많은 종류의 값이 발생하는 경우를 감지할 때 유용합니다.

    표 | 고유값 수 설정 항목
    설정 항목설명
    필터로그 검색 조건 (Lucene 쿼리)
    대상 필드고유값을 계산할 필드 (예: host)
    이벤트 발행 조건고유값 수 {연산자} {임계값} (예: cardinality > 100)
  • 백분위 (percentile): 지정한 숫자 필드의 백분위(Percentile) 값을 계산합니다. 응답 시간의 tail latency를 모니터링할 때 유용합니다. Percentile 선택을 변경하면 이벤트 발행 조건의 키가 자동으로 업데이트됩니다.

    표 | 백분위 설정 항목
    설정 항목설명
    필터로그 검색 조건 (Lucene 쿼리)
    대상 필드백분위를 계산할 숫자 필드 (예: response_time.n)
    PercentileP99, P95, P90, P75, P50 중 선택
    이벤트 발행 조건P99/P95/... {연산자} {임계값} (예: p99 > 3000)
    표 | 백분위 의미
    백분위의미
    P50중앙값. 전체 데이터의 50%가 이 값 이하
    P75전체 데이터의 75%가 이 값 이하
    P90전체 데이터의 90%가 이 값 이하
    P95전체 데이터의 95%가 이 값 이하
    P99전체 데이터의 99%가 이 값 이하
  • 포함/제외 건수 (count_v2): 포함 필터의 건수에서 제외 필터의 건수를 뺀 순수 건수를 계산합니다.

    표 | 포함/제외 건수 설정 항목
    설정 항목설명
    필터 (포함)포함할 로그 조건 (예: status_nxx:status_4xx OR status_nxx:status_5xx)
    필터 제외제외할 로그 조건 (예: status_nxx:status_4xx)
    분모 필터비율 계산용 분모 (선택사항)
    이벤트 발행 조건포함-제외 건수 {연산자} {임계값} (예: include_minus_exclude_count > 10)
    • 예시: 필터 status_nxx:status_4xx OR status_nxx:status_5xx, 필터 제외 status_nxx:status_4xx → 4xx+5xx에서 4xx를 제외한 순수 5xx 건수가 10을 초과하면 알림 발생
그룹화 필드(Group By)

그룹화 필드를 설정하면 해당 필드의 값별로 독립적으로 알림 조건을 판정합니다. 드롭다운에서 그룹화할 필드를 선택합니다. 드롭다운을 클릭하면 현재 카테고리에서 사용 가능한 필드 목록이 자동완성됩니다.

  • 예시: 필터 level:ERROR, 그룹화 필드 host, rule rows > 3

    표 | 그룹화 설정 비교
    항목그룹화 없음그룹화 사용
    판정 단위전체 로그를 하나로 집계그룹 값별 독립 집계
    알림 발생1건조건 충족 그룹 수만큼
    알림 제목이벤트 제목[그룹 값] 이벤트 제목
    Stateful전체 기준 상태 전이그룹별 독립 상태 전이
    • [web-01] 에러 알림 — web-01에서 에러 8건 → 알림 발생

    • [web-02] 에러 알림 — web-02에서 에러 5건 → 알림 발생

    • [api-01] 에러 알림 — api-01에서 에러 2건 → 조건 미충족, 알림 미발생

    노트

    이벤트 상태가 해소되면 추가 알림을 활성화한 경우, 그룹별로 독립적으로 ABNORMAL → RECOVERED 상태가 전이됩니다. 예를 들어 web-01에서 에러가 해소되면 [web-01] RECOVERED 알림이 발생하며, 다른 호스트의 상태에는 영향을 미치지 않습니다.

추가 설정

  • 인터벌: 선택한 시간(unset, 1분, 5분, 10분, 30분, 1시간, 12시간) 간격으로 알림 조건을 확인합니다.

  • 무음: 이벤트 발생 후, 선택한 시간(unset, 1분, 5분, 10분, 30분, 1시간, 12시간) 동안 같은 이벤트가 발생되지 않습니다.

  • 이벤트 동작 시간: 이벤트가 특정 시간대(근무/비근무/점검 시간 등)에 동작하도록 태그를 설정하세요. 태그를 설정하지 않으면 이벤트가 활성화된 상태에서 24시간 상시 동작합니다.

    1. + 추가를 클릭하세요.
    2. 이벤트 동작 시간에서 +새로운 태그 생성을 클릭하세요.
    3. 이벤트 동작 시간 태그 생성에서 태그 이름, 요일, 시간, 색상을 선택하고 [ 적용 ] 버튼을 클릭하세요.
    4. 생성한 태그는 태그 목록에서 확인할 수 있으며, 체크 박스를 선택하면 적용됩니다.
    5. 수정 또는 삭제할 태그의 수정 아이콘 아이콘을 클릭해 이벤트 동작 시간 태그 수정에서 태그를 수정하거나 태그 삭제할 수 있습니다.
    주의

    태그 삭제 시 해당 태그가 적용된 모든 사용자의 태그가 제거됩니다. 단, 이벤트 규칙에서 사용 중인 태그는 삭제할 수 없습니다.

  • 이벤트 수신 태그: 이벤트에 수신 태그를 설정하면, 해당 태그를 가진 프로젝트 멤버에게 알림을 전송합니다. 수신자 태그를 설정하지 않으면 프로젝트 내 모든 사용자에게 알림이 전송됩니다.

    1. + 태그 추가 또는 +를 클릭하세요.
    2. 이벤트 수신 태그 창 아래의 + 새 태그 생성을 클릭하세요.
    3. 태그 생성 창에서 태그 이름을 입력하고, 색상을 선택한 후, [ 태그 생성 ] 버튼을 클릭해 태그를 생성하세요.
    4. 생성된 태그는 태그 목록의 수정 아이콘 아이콘을 클릭해 수정 또는 삭제하세요.
    5. 이벤트 수신 태그 창의 태그 목록에서 원하는 태그를 선택하면 적용됩니다.

    이벤트 설정 시 이벤트 수신 태그를 선택하여 해당 태그를 가진 프로젝트 멤버와 3rd-party 플러그인에 알림을 전송할 수 있습니다. 경고 알림 > 이벤트 수신 설정에서 프로젝트 멤버와 3rd-party 플러그인에 각각 태그를 지정할 수 있습니다.

시뮬레이션

알림을 저장하기 전에 과거 데이터로 시뮬레이션하여 알림 발생 예상 건수를 확인할 수 있습니다.

  1. 알림 설정을 완료한 후 하단의 시간 범위를 선택하세요.

  2. [ 시뮬레이션 ] 버튼을 클릭하세요.

  3. 차트에 시간대별 데이터와 알림 발생 횟수가 표시됩니다.

    노트

    시뮬레이션 시간 범위를 조절하여 다양한 시간대의 알림 발생 패턴을 확인할 수 있습니다. 최근 1~2분의 데이터는 인덱스 빌드 지연으로 조회되지 않을 수 있습니다.

  4. 이벤트 규칙 추가 창에서 설정이 완료되면 [ 저장 ] 버튼을 클릭하세요.

로그 탐색기에서 알림 생성

로그 탐색기에서 직접 알림을 생성할 수 있습니다.

  1. 로그 > 로그 탐색 메뉴로 이동하세요.

  2. 카테고리와 검색 쿼리를 설정하세요.

  3. 화면 오른쪽 위의 [ 이벤트 추가 ] 버튼을 클릭하세요.

  4. Drawer에서 알림 설정 폼이 열리며, 현재 카테고리와 검색 쿼리가 자동으로 채워집니다.

  5. 추가 설정을 완료하고 [ 저장 ] 버튼을 클릭하세요.

  6. 저장 완료 후 [ 이동 ] 버튼을 클릭하면 알림 목록으로 이동합니다.

이벤트 수정/삭제

  1. 경고 알림 > 이벤트 설정복합 로그 탭으로 이동하세요.

  2. 로그 이벤트 목록에서 수정 또는 삭제하려는 이벤트의 수정 아이콘 아이콘을 클릭하세요.

  3. 이벤트 설정 화면에서 옵션을 수정하고, [ 저장 ] 버튼을 클릭하세요.

    a. 선택한 이벤트를 삭제하려면 이벤트 설정 화면의 오른쪽 위의 [ 삭제 ] 버튼을 클릭하세요.

이벤트 공유

메트릭스 이벤트 설정을 JSON 파일로 저장해 다른 사용자와 설정을 공유하거나 다른 사용자의 설정을 가져올 수 있습니다.

  • JSON 파일명: event-rules-YYYYMMDD.json

내보내기

  1. 화면 오른쪽 위에 [ JSON 내보내기 아이콘 ] 버튼을 클릭하세요.
  2. JSON 편집 창이 나타나면 [ 내보내기 아이콘 내보내기 ] 버튼을 클릭하세요.
    • 이벤트를 검색 후 내보내기 기능을 이용하면 검색한 목록만 JSON 파일로 다운받을 수 있습니다.
  3. JSON 파일이 다운로드되면 공유할 다른 사용자에게 전달하세요.

가져오기

  1. 화면 오른쪽 위에 [ 가져오기 아이콘 ] 버튼을 선택하세요.
  2. 내보내기 기능을 통해 다운로드한 JSON 파일을 선택하세요.
  3. JSON 편집 창이 나타나면 [ 목록에 추가하기 ] 또는 [ 덮어쓰기 ] 버튼을 선택하세요.
주의

같은 종류의 제품 간에 이용할 것을 권장합니다. 다른 제품의 프로젝트로부터 이벤트 설정을 가져올 수는 있지만 정상 작동하지 않습니다.

Json 형식으로 수정하기

  1. 화면 오른쪽 위에 [ JSON 내보내기 아이콘 ] 버튼을 클릭하세요.

  2. 편집 창이 나타나면 JSON 형식에 맞춰 내용을 수정하세요.

  3. 수정을 완료하면 화면 아래 [ 저장 ] 버튼을 선택하세요.

노트

수정한 내용이 JSON 형식에 맞지 않으면 화면 아래에 에러 메시지가 표시되며, 저장할 수 없습니다. 표시되는 에러 메시지는 형식에 따라 다를 수 있습니다.

JSON error