계산된 필드 추출은 미리 보기 상태입니다

계산된 필드 추출을 사용하여 로그 탐색기에서 Grok 패턴을 사용해 쿼리 시 로그에서 값을 추출하세요.

Request Access

개요

계산된 필드 추출을 사용하면 로그 탐색기에서 쿼리 시 Grok 구문 분석 규칙을 적용할 수 있으므로 파이프라인을 수정하거나 데이터를 다시 수집하지 않고도 원시 로그 메시지나 속성에서 값을 추출할 수 있습니다. AI 기반 구문 분석으로 추출 규칙을 자동으로 생성하거나, 특정 요구 사항에 맞게 직접 Grok 패턴을 정의할 수 있습니다.

추출 계산된 필드를 만들려면 계산된 필드 만들기를 참조하세요.

자동 구문 분석

AI 기반 자동 구문 분석을 사용하여 로그 데이터에서 Grok 규칙을 생성할 수 있습니다. Datadog은 로그 메시지의 내용을 분석하여 추출 규칙을 자동으로 생성하므로 Grok 패턴을 수동으로 작성할 필요가 없습니다.

Datadog 계산된 필드에서 AI 기반 Grok 구문 분석 예시

로그 측면 패널에서 자동 구문 분석에 액세스하는 방법은 두 가지가 있습니다.

  1. 복사 버튼 옆에 있는 AI 버튼을 클릭하세요.
  2. 로그 메시지의 특정 부분을 강조 표시하고 팝업 메뉴에서 AI 버튼을 클릭하세요.

AI 버튼을 클릭하면 Datadog이 계산된 필드 양식을 자동으로 채웁니다.

  1. Extract from: 기본값은 전체 로그 메시지입니다. 드롭다운을 변경하여 개별 속성을 대신 구문 분석할 수 있습니다.
  2. Log sample: 선택한 로그로 자동 채워집니다.
  3. Parsing rule: 로그 샘플에서 자동으로 생성됩니다.

필요에 따라 생성된 규칙을 검토하고 수정하세요. 수동으로 편집하거나 Generate a new rule을 클릭하여 Datadog이 다시 시도하도록 할 수 있습니다. 로그 샘플을 수정, 삽입 또는 교체하여 다양한 로그 형식에 대해 규칙을 테스트할 수도 있습니다.

'좋아요' 또는 '싫어요' 버튼을 사용하여 인라인 피드백을 제공하고 기능 개선에 기여하세요.

구문

추출 필드는 Grok 패턴을 사용하여 로그 속성에서 값을 식별하고 캡처합니다. Grok 패턴은 다음 형식의 하나 이상의 토큰으로 구성됩니다.

%{PATTERN_NAME:field_name}
  • PATTERN_NAME: Grok 매처.
  • field_name: 추출된 계산 필드의 이름.

여러 패턴을 함께 연결하여 복잡한 로그 메시지를 구문 분석할 수 있습니다.

쿼리 시간에 지원되는 매처 및 필터

query-time(로그 탐색기에서)에 사용 가능한 Grok 구문 분석 기능은 매처(data, integer, notSpace, number, word) 및 필터(numberinteger)의 제한된 하위 집합을 지원합니다. 장기적인 구문 분석이 필요한 경우 로그 파이프라인을 정의하세요.

로그 탐색기의 쿼리 시간 Grok 구문 분석은 제한된 하위 집합의 매처와 필터를 지원합니다. 각 매처 또는 필터는 다음 형식의 Grok 패턴에 사용됩니다.

%{MATCHER:field_name}

매처

매처Grok 패턴 예시
data
문자의 임의 시퀀스(non-greedy)
status=%{data:status}
word
영숫자
country=%{word:country}
number
부동 소수점 숫자
value=%{number:float_val}
integer
정수 값
count=%{integer:count}
notSpace
공백이 아닌 문자
path=%{notSpace:request_path}

필터

필터를 적용하여 추출된 값을 숫자 유형으로 변환합니다. 필터는 매처와 동일한 패턴 구문을 사용합니다.

필터Grok 패턴 예시
number
숫자 문자열을 숫자로 구문 분석
latency=%{number:lat}
integer
숫자 문자열을 정수로 구문 분석
users=%{integer:user_count}

예시

이 기능을 사용하여 수집 파이프라인을 수정하지 않고도 로그 필드를 온디맨드로 분석할 수 있습니다. 로그 라인:

country=Brazil duration=123ms path=/index.html status=200 OK

추출 Grok 규칙:

country=%{word:country} duration=%{integer:duration} path=%{notSpace:request_path} status=%{data:status}

결과 계산된 필드:

  • #country = Brazil
  • #duration = 123
  • #request_path = /index.html
  • #status = 200 OK

추가 자료

추가 유용한 문서, 링크 및 기사: