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

카테고리 프로세서 (Category Processor)

원문 보기 위키 갱신

카테고리 프로세서를 이용하면 지정한 검색 쿼리와 일치하는 로그(새 속성 이름에는 공백이나 특수문자를 넣을 수 없어요)에 새 속성을 추가할 수 있어요. 그리고 카테고리를 사용해 분석용 그룹(예: URL 그룹, 머신 그룹, 환경, 응답 시간 버킷)을 만들 수 있죠.

참고:

  • 쿼리 문법은 Log Explorer 검색창의 문법과 동일해요. 이 쿼리는 패싯(facet) 여부와 관계없이 모든 로그 속성이나 태그에 대해 수행할 수 있고, 쿼리 안에 와일드카드도 쓸 수 있어요.
  • 로그가 프로세서 쿼리 중 하나와 일치하면 그 즉시 처리가 멈춰요. 로그가 여러 쿼리에 일치할 수 있는 경우에는 순서를 잘 정렬해두어야 해요.
  • 카테고리 이름은 유니크해야 해요.
  • 카테고리 프로세서에 정의한 뒤에는 log status remapper를 이용해 카테고리를 로그 상태로 매핑할 수 있어요.

출처: 문서

본문

사용 사례

Category Processor는 로그 콘텐츠에 따라 로그 이벤트를 분류할 때 써요. 흔한 사용 사례는 다음과 같아요.

  • 성공·실패 로그 분류(예: Auth0 로그).
  • 로그 콘텐츠에 따른 로그 상태 분류(예: IIS 로그).

로그의 전후 상태

예시: Category Processor로 로그 분류하기

Before (분류 전):

{
  "http": {
    "method": "GET",
    "url": "/v1/orders",
    "status_code": 500
  },
  "message": "Order processing failed: timeout while contacting payment provider",
  "timestamp": 1696945536000
}

Category Processor (카테고리 프로세서)

http.status_code를 기준으로 로그 상태 카테고리를 지정하는 Category Processor를 만들고, Log Status Remapper를 사용해 이를 공식 로그 상태로 적용해보세요.

After processing (처리 후):

{
  "http": {
    "method": "GET",
    "url": "/v1/orders",
    "status_code": 500
  },
  "message": "Order processing failed: timeout while contacting payment provider",
  "log_status": "error",
  "timestamp": 1696945536000
}

Category Processor는 HTTP 상태 코드에서 파생된 로그 상태를 담은 log_status라는 새 속성을 추가했어요.

API

Datadog Log Pipeline API 엔드포인트에 다음 카테고리 프로세서 JSON 페이로드를 사용하세요:

{
  "type": "category-processor",
  "name": "Assign a custom value to the <TARGET_ATTRIBUTE> attribute",
  "is_enabled": true,
  "categories": [
    {"filter": {"query": "<QUERY_1>"}, "name": "<VALUE_TO_ASSIGN_1>"},
    {"filter": {"query": "<QUERY_2>"}, "name": "<VALUE_TO_ASSIGN_2>"}
  ],
  "target": "<TARGET_ATTRIBUTE>"
}
Parameter Type Required Description
type String Yes 프로세서 유형이에요.
name String No 프로세서 이름이에요.
is_enabled Boolean No 프로세서 활성화 여부예요. 기본값: false.
categories Array of Object Yes 로그 일치 여부를 판단하는 필터 배열과, 로그에 사용자 지정 값을 할당할 대응하는 name이에요.
target String Yes 일치하는 카테고리가 값을 정의하는 대상 속성 이름이에요.

더 알아보기 (Learn more)

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