로그 날짜 리매퍼 (Log Date Remapper)
Datadog이 로그를 받으면 다음 기본 속성 중 하나의 값으로 타임스탬프를 지정해요:
timestampdate_timestampTimestampeventTimepublished_date
로그의 날짜가 이 목록에 없는 속성에 있다면 로그 날짜 리매퍼 프로세서를 사용해 해당 날짜 속성을 공식 로그 타임스탬프로 정의하세요:
인식되는 날짜 형식은 ISO8601, UNIX(밀리초 EPOCH 형식), RFC3164입니다.
출처: 문서
본문
로그에 위에 나열된 형식과 일치하는 타임스탬프가 없다면 grok 프로세서를 사용해 타임스탬프에서 epoch 시간을 새 속성으로 추출하세요. 날짜 리매퍼는 새로 정의된 속성을 사용해요.
Datadog에서 사용자 정의 날짜·시간 형식을 파싱하는 방법을 보려면 Parsing dates를 참고하세요.
참고:
- 로그 이벤트는 최대 18시간 전과 2시간 후까지 제출할 수 있어요.
- ISO 8601-1:2019 기준으로 기본 형식은
T[hh][mm][ss], 확장 형식은T[hh]:[mm]:[ss]예요. 이전 버전은 두 형식 모두에서 T(시간을 나타냄)를 생략했어요. - 로그에 기본 속성이 없고 사용자 정의 날짜 속성도 정의하지 않았다면 Datadog은 로그를 받은 날짜로 타임스탬프를 지정해요.
- 파이프라인 내에서 주어진 로그에 여러 로그 날짜 리매퍼 프로세서가 적용되면 (파이프라인 순서에 따라) 마지막 프로세서가 적용됩니다.
사용 사례 (Use cases)
로그 날짜 리매퍼는 일반적으로 다음에 사용돼요:
- 기본 날짜 속성과 일치하지 않는 경우 로그 이벤트에 사용할 날짜로 다른 속성을 선택하기. 예를 들어 Akamai Stream에서 온 로그는
reqTimeMillis를 타임스탬프로 사용해요. 로그 날짜 리매퍼를 사용해 그 속성을 로그 타임스탬프로 설정하세요. - grok 파싱 후 속성 선택하기. 예를 들어 Ruby에서 온 로그는 메시지 속성에 로그 타임스탬프가 있는데, 이는 파싱 후에만 접근할 수 있어요.
로그의 전후 상태 (Before and after state of logs)
로그가 파싱되기 전에 Datadog은 자체 수집 시간을 로그 타임스탬프로 참조하는데, 이는 로그 메시지에서 찾은 실제 이벤트 시간과 일치하지 않을 수 있어요.
로그 날짜 리매퍼를 적용한 후 Datadog은 지정된 속성의 사용자 정의 타임스탬프를 사용해 Datadog의 로그 타임스탬프를 로그 메시지에 기록된 실제 이벤트 시간과 일치시켜요. 이를 통해 로그를 분석하거나 검색할 때 역사적 정확성을 보장해요.
API
다음 로그 날짜 리매퍼 JSON 페이로드와 함께 Datadog Log Pipeline API 엔드포인트를 사용하세요:
{
"type": "date-remapper",
"name": "Define <SOURCE_ATTRIBUTE> as the official Date of the log",
"is_enabled": false,
"sources": ["<SOURCE_ATTRIBUTE_1>"]
}
| 매개변수 | 타입 | 필수 | 설명 |
|---|---|---|---|
type |
String | 예 | 프로세서의 타입. |
name |
String | 아니오 | 프로세서의 이름. |
is_enabled |
Boolean | 아니오 | 프로세서가 활성화되었는지 여부. 기본값: false. |
sources |
Array of strings | 예 | 소스 속성 배열. |