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

프로세싱 파이프라인 (Processing Pipelines)

원문 보기 위키 갱신

APM Processing Pipelines를 사용하면 애플리케이션 코드를 수정하지 않고도 수집 후 저장 전에 스팬 속성을 변환·정규화·강화할 수 있어요.

출처: 문서

본문

개요 (Overview)

APM Processing Pipelines를 사용하면 애플리케이션 코드를 수정하지 않고도 수집 후 저장 전에 스팬 속성을 변환·정규화·강화할 수 있어요.

파이프라인을 다음과 같은 용도로 사용하세요:

  • 서비스 전반의 속성 명명 표준화
  • 일관되지 않은 키를 단일 표준 속성으로 통합
  • 문자열 값에서 구조화된 데이터 추출

Processing Pipelines는 Datadog 백엔드에서 실행되며 새로 수집된 스팬에만 적용돼요. 각 파이프라인에는 파이프라인에 들어가는 스팬을 정의하는 필터 쿼리와, 일치하는 스팬을 어떻게 변환할지 정의하는 하나 이상의 프로세서가 있어요. 파이프라인은 위에서 아래로 순서대로 평가돼요.

파이프라인 만들기 (Create a pipeline)

파이프라인을 만들려면:

  1. APM > Settings > Pipelines로 이동하세요.
  2. Add Pipeline을 클릭하세요.
  3. 쿼리 구문을 사용해 필터 쿼리를 정의하세요. 파이프라인은 이 필터와 일치하는 스팬만 처리해요.
  4. 파이프라인 이름을 지정하세요.
  5. Enable을 클릭하세요.

파이프라인 관리 (Manage pipelines)

Pipelines 페이지에서 다음을 할 수 있어요:

  • 개별 파이프라인 활성화 또는 비활성화
  • 파이프라인을 드래그해 순서 변경
  • 초안(draft) 모드로 파이프라인 편집
  • RBAC로 접근 제한

파이프라인을 비활성화하면 새로 수집된 스팬을 처리하지 않게 돼요. 이전에 저장된 스팬을 소급해서 수정하지는 않아요.

프로세서 (Processors)

프로세서는 일치하는 스팬에 적용되는 변환을 정의해요. 파이프라인 내에서 프로세서는 순차적으로 실행돼요. 한 프로세서의 속성 변경은 같은 파이프라인의 모든 다운스트림 프로세서에 적용돼요. 프로세서를 추가하려면 파이프라인을 펼치고 Add Processor를 클릭하세요.

참고: 프로세서는 스팬 태그가 아닌 스팬 속성에만 적용할 수 있어요.

Remapper 프로세서 (Remapper processor)

Remapper 프로세서는 서비스 전반의 일관된 속성 명명을 적용하기 위해 스팬 속성을 이름 변경·병합·제거해요. 속성 키는 수정하지만 속성 값에서 새 데이터를 추출하지는 않아요. 값에서 데이터를 추출하려면 Parser 프로세서를 사용하세요.

시스템 속성 env, service, resource_name, operation_name, @duration은 리매핑할 수 없어요. 대시보드, 몬니터, 보존 필터에서 사용하는 속성을 이름 변경하거나 제거하면 해당 대시보드, 몬니터, 보존 필터도 업데이트하세요.

예를 들어 서로 다른 서비스가 같은 논리 필드에 대해 http.route, http.path, http.target을 방출할 수 있어요. Remapper를 사용해 세 가지 모두 http.route로 매핑하면 모든 일치 스팬이 단일 표준화 속성을 포함하게 돼요.

Parser 프로세서 (Parser processor)

Parser 프로세서는 Grok 파싱 규칙을 사용해 기존 스팬 속성 값에서 구조화된 속성을 추출해요. Log Management 파싱과 동일한 Grok 구문을 모든 매처와 필터를 포함해 사용해요. Remapper와 달리 Parser는 파싱된 콘텐츠를 기반으로 새 속성을 만들어요. 스팬 속성에 저장된 반구조화 텍스트를 검색 가능한 구조화 속성으로 변환하는 데 사용하세요. 속성 키를 이름 변경하거나 통합하려면 Remapper 프로세서를 대신 사용하세요.

Grok 파싱 규칙을 구성하려면:

  1. 파싱 속성과 샘플 정의: 파싱할 속성을 선택하고 선택한 속성에 대한 샘플 데이터를 추가하세요.
  2. 파싱 규칙 정의: 규칙 편집기에서 파싱 규칙을 작성하세요.
  3. 파싱 미리보기: 샘플을 선택해 파싱 규칙에 대해 평가하세요. 모든 샘플은 Grok 규칙 중 하나가 샘플과 일치하는지 여부를 나타내는 상태(match 또는 no match)를 표시해요.

여러 Grok 규칙이 같은 샘플과 일치하면 첫 번째 일치 규칙만 적용돼요.

실행 흐름 (Execution flow)

Processing Pipelines는 스팬 처리 수명 주기의 특정 지점에서 실행돼요:

  1. 스팬이 수집된다.
  2. Datadog 강화(인프라, CI, 소스 코드 메타데이터)가 적용된다.
  3. Processing Pipelines가 실행된다.
  4. 보존 필터와 스팬 기반 메트릭이 계산된다.
  5. 스팬이 저장되고 인덱싱된다.

전처리된 속성 (Preprocessed attributes)

Datadog는 파이프라인이 실행되기 전에 일부 스팬 속성을 전처리해요. 예를 들어 APM 데이터 양자화(Quantization)는 기본적으로 리소스 이름을 정규화하며 비활성화할 수 없어요. 이 속성을 더 사용자 지정해야 한다면 추가 파이프라인을 정의할 수 있어요.

더 알아보기 (Learn more)