문자열 조작 프로세서 - Amazon CloudWatch

문자열 조작 프로세서

문자열 프로세서는 사례 변환, 자르기, 패턴 일치 같은 작업을 통해 로그 이벤트 내의 텍스트 값을 수정합니다.

lowercase_string 프로세서

지정된 필드를 소문자로 변환합니다.

구성

다음과 같은 파라미터를 사용하여 lowercase_string 프로세서를 구성합니다.

processor: - lowercase_string: with_keys: ["status", "method"]
Parameters
with_keys(필수)

소문자로 변환할 필드 이름의 배열입니다. 문자열 값만 처리합니다.

uppercase_string 프로세서

지정된 필드를 대문자로 변환합니다.

구성

다음과 같은 파라미터를 사용하여 uppercase_string 프로세서를 구성합니다.

processor: - uppercase_string: with_keys: ["status_code", "method"]
Parameters
with_keys(필수)

대문자로 변환할 필드 이름의 배열입니다. 문자열 값만 처리합니다.

trim_string 프로세서

지정된 필드에서 선행 및 후행 공백을 제거합니다.

구성

다음과 같은 파라미터를 사용하여 trim_string 프로세서를 구성합니다.

processor: - trim_string: with_keys: ["message", "user_input"]
Parameters
with_keys(필수)

공백을 잘라낼 필드 이름의 배열입니다. 문자열 값만 처리합니다.

substitute_string 프로세서

정규식을 사용하여 문자열 대체를 수행합니다.

구성

다음과 같은 파라미터를 사용하여 substitute_string 프로세서를 구성합니다.

processor: - substitute_string: entries: - source: "message" from: "ERROR" to: "WARN"
Parameters
entries(필수)

각 로그 이벤트에 대해 수행할 대체 작업의 배열입니다.

entries[].source(필수)

문자열 대체를 수행할 필드입니다.

entries[].from(필수)

일치되면 대체할 정규식 패턴입니다.

entries[].to(필수)

일치한 패턴의 대체 문자열입니다.

truncate 프로세서

필드 값을 지정된 길이로 자릅니다.

구성

다음과 같은 파라미터를 사용하여 truncate 프로세서를 구성합니다.

processor: - truncate: source_keys: ["message", "description"] length: 100 start_at: 0
Parameters
source_keys(필수)

잘라낼 필드 이름의 배열입니다. 각 필드 이름은 최대 128자입니다.

length (선택 사항)

자른 후의 최대 길이입니다. 범위: 1~8192.

start_at (선택 사항)

자르기를 시작할 위치입니다. 범위: 0~8192. 기본값은 0입니다.

extract_value 프로세서

정규식을 사용하여 값을 추출합니다.

구성

다음과 같은 파라미터를 사용하여 extract_value 프로세서를 구성합니다.

processor: - extract_value: entries: - source: "message" target: "extracted_data" from: "user=(?<user>\\w+)" to: "${user}" target_type: "string"
Parameters
entries(필수)

추출 작업의 배열입니다. 최대 항목 수는 20개입니다.

entries[].source(필수)

추출해 올 필드입니다. 최대 128자입니다.

entries[].target(필수)

추출된 값의 대상 필드입니다. 최대 128자입니다.

entries[].from(필수)

정규식 패턴입니다. 최대 128자입니다.

entries[].to(필수)

캡처 그룹이 있는 대체 패턴입니다. 최대 128자입니다.

entries[].target_type (선택 사항)

대상 데이터 유형('정수', '실수', '문자열', '부울')입니다.

convert_entry_type 프로세서

서로 다른 데이터 형식 간에 필드 값을 변환합니다.

구성

다음과 같은 파라미터를 사용하여 convert_entry_type 프로세서를 구성합니다.

processor: - convert_entry_type: key: "count" type: "integer"
Parameters
key(필수)

변환할 단일 필드 이름입니다.

type(필수)

대상 데이터 유형입니다. 옵션: '정수', '실수', '문자열', '부울'.

date 프로세서

날짜/시간 필드를 구문 분석하고 형식을 지정합니다.

구성

다음과 같은 파라미터를 사용하여 date 프로세서를 구성합니다.

processor: - date: match: - key: "timestamp" patterns: ["yyyy-MM-dd'T'HH:mm:ss.SSSSSS'Z'"] destination: "@timestamp" source_timezone: "UTC" destination_timezone: "America/New_York"
Parameters
match(필수)

날짜 매칭 구성의 배열입니다. 최대 항목 수는 10개입니다.

match[].key(필수)

날짜 문자열이 포함된 필드입니다. 최대 128자입니다.

match[].patterns(필수)

시도할 날짜 형식 패턴의 배열입니다. 최대 패턴 수는 5개이며, 각각 최대 256자입니다.

destination (선택 사항)

구문 분석된 모든 날짜에 대한 단일 대상 필드입니다. 최대 128자입니다.

source_timezone (선택 사항)

구문 분석의 소스 시간대입니다.

destination_timezone (선택 사항)

출력의 대상 시간대입니다.

output_format (선택 사항)

출력 날짜 형식입니다. 최대 64자입니다.

destination_type (선택 사항)

출력 유형 - 'timestampz', 'long' 또는 'string'.

dissect 프로세서

패턴 매칭을 사용하여 정형 데이터를 추출합니다.

구성

다음과 같은 파라미터를 사용하여 dissect 프로세서를 구성합니다.

processor: - dissect: map: message: "%{timestamp} %{level}"
Parameters
map(필수)

디섹트 패턴을 사용한 필드 매핑입니다.

list_to_map 프로세서

배열 필드를 맵 구조로 변환합니다.

구성

다음과 같은 파라미터를 사용하여 list_to_map 프로세서를 구성합니다.

processor: - list_to_map: source: "tags" key: "name" value_key: "value" target: "tag_map"
Parameters
source(필수)

배열 데이터가 포함된 필드입니다. 최대 128자입니다.

key(필수)

맵 키로 사용할 필드 이름입니다. 최대 128자입니다.

value_key (선택 사항)

맵 값으로 사용할 필드 이름입니다. 최대 128자입니다.

target (선택 사항)

맵 구조의 대상 필드입니다. 최대 128자입니다.

flatten (선택 사항)

결과 맵을 평면화할지 설정합니다.

flattened_element (선택 사항)

평면화할 때 사용할 요소입니다('first' 또는 'last').

rename_keys 프로세서

로그 이벤트의 필드 이름을 변경합니다.

구성

다음과 같은 파라미터를 사용하여 rename_keys 프로세서를 구성합니다.

processor: - rename_keys: entries: - from_key: "old_name" to_key: "new_name" overwrite_if_to_key_exists: true
Parameters
entries(필수)

이름 바꾸기 작업의 배열입니다. 최대 항목 수는 5개입니다.

entries[].from_key(필수)

현재 필드 이름입니다. 최대 128자입니다.

entries[].to_key(필수)

새 필드 이름입니다. 최대 128자입니다.

entries[].overwrite_if_to_key_exists (선택 사항)

기존 대상 필드를 덮어쓸지 설정합니다.

select_entries 프로세서

이벤트에서 지정된 필드만 선택합니다.

구성

다음과 같은 파라미터를 사용하여 select_entries 프로세서를 구성합니다.

processor: - select_entries: include_keys: ["timestamp", "level", "message"]
Parameters
include_keys(필수)

유지할 필드 이름의 배열입니다. 최대 키 수는 50개이며, 각각 최대 128자입니다.

translate 프로세서

조회 테이블을 사용하여 필드 값을 변환합니다.

구성

다음과 같은 파라미터를 사용하여 translate 프로세서를 구성합니다.

processor: - translate: mappings: - source: "status_code" targets: - target: "status_text" map: "200": "OK" "404": "Not Found"
Parameters
mappings(필수)

변환 구성의 배열입니다. 최대 매핑 수는 10개입니다.

mappings[].source(필수)

변환할 필드입니다. 최대 128자입니다.

mappings[].targets(필수)

대상 구성의 배열입니다. 최대 대상 수는 10개입니다.

mappings[].targets[].target(필수)

대상 필드 이름입니다. 최대 128자입니다.

mappings[].targets[].map(필수)

변환 매핑입니다. 최대 항목 수는 100개이며, 각 값은 최대 512자입니다.