룩업 프로세서 (Lookup Processor)
룩업 프로세서를 사용해 로그 속성과 Reference Table 또는 프로세서 매핑 테이블에 저장된 사람이 읽을 수 있는 값 사이의 매핑을 정의하세요.
출처: 문서
본문
예를 들어 룩업 프로세서를 사용해 내부 서비스 ID를 사람이 읽을 수 있는 서비스 이름으로 매핑할 수 있어요. 또는 방금 프로덕션 환경에 연결을 시도한 MAC 주소가 도난당한 머신 목록에 있는지 확인하는 데 사용할 수도 있어요.
사용 사례 (Use cases)
룩업 프로세서는 일반적으로 속성을 사람이 읽을 수 있는 속성으로 변환하는 데 사용돼요. 흔히 다음에 사용돼요:
- 서비스 ID를 사람이 읽을 수 있는 서비스 이름으로 매핑
- 사용자 ID를 사용자 이름으로 매핑
- 비트 값을 사람이 읽을 수 있는 속성으로 매핑
설정 (Setup)
룩업 프로세서는 다음 작업을 수행해요:
- 현재 로그에 소스 속성이 포함되어 있는지 확인해요.
- 소스 속성 값이 매핑 테이블에 존재하는지 확인해요.
- 존재하면 테이블의 해당 값으로 대상 속성을 만들어요.
- 선택적으로, 매핑 테이블에서 값을 찾지 못하면
fallbackValue필드에 설정된 기본 대체 값으로 대상 속성을 만들어요. Manual Mapping 탭에서source_key,target_value쌍 목록을 수동으로 입력하거나 CSV 파일을 업로드할 수 있어요. - 매핑 테이블의 크기 제한은 100Kb예요. 이 제한은 플랫폼의 모든 룩업 프로세서에 적용돼요. 그러나 Reference Table은 더 큰 파일 크기를 지원해요.
- 선택적으로, 매핑 테이블에서 값을 찾지 못하면 Reference Table의 값으로 대상 속성을 만들어요. Reference Table 탭에서 Reference Table의 값을 선택할 수 있어요.
로그의 전후 상태 (Before and after state of logs)
예시: 룩업 프로세서로 사람이 읽을 수 있는 값으로 로그 강화
전 (Before):
{
"transaction": {
"id": "tx_98765",
"status_code": 2
},
"user": {
"id": "42"
}
}
룩업 프로세서 (Lookup Processor)
소스 속성 user.id와 사용자 42 → alice.doe, 77 → bob.smith가 포함된 룩업 테이블을 가진 룩업 프로세서를 만들어요.
처리 후 (After processing):
{
"transaction": {
"id": "tx_98765",
"status_code": 2
},
"user": {
"id": "42",
"username": "alice.doe"
}
}
API
다음 룩업 프로세서 JSON 페이로드와 함께 Datadog Log Pipeline API 엔드포인트를 사용하세요:
{
"type": "lookup-processor",
"name": "<PROCESSOR_NAME>",
"is_enabled": true,
"source": "<SOURCE_ATTRIBUTE>",
"target": "<TARGET_ATTRIBUTE>",
"lookup_table": ["key1,value1", "key2,value2"],
"default_lookup": "<DEFAULT_TARGET_VALUE>"
}
| 매개변수 | 타입 | 필수 | 설명 |
|---|---|---|---|
type |
String | 예 | 프로세서의 타입. |
name |
String | 아니오 | 프로세서의 이름. |
is_enabled |
Boolean | 예 | 프로세서가 활성화되었는지 여부. 기본값: false. |
source |
String | 예 | 룩업을 수행하는 데 사용하는 소스 속성. |
target |
String | 예 | 매핑 목록의 해당 값 또는 목록에서 찾지 못한 경우 default_lookup을 포함하는 속성의 이름. |
lookup_table |
Array of strings | 예 | 소스 속성의 값과 관련 대상 속성 값의 매핑 테이블: [ "source_key1,target_value1", "source_key2,target_value2" ] 형식. |
default_lookup |
String | 아니오 | 소스 값이 목록에서 발견되지 않을 때 대상 속성에 설정할 값. |