View a markdown version of this page

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

문자열 조작 프로세서

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

lowercase_string 프로세서

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

구성

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

processor: - lowercase_string: with_keys: ["status", "method"]
파라미터
with_keys(필수)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

uppercase_string 프로세서

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

구성

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

processor: - uppercase_string: with_keys: ["status_code", "method"]
파라미터
with_keys(필수)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

trim_string 프로세서

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

구성

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

processor: - trim_string: with_keys: ["message", "user_input"]
파라미터
with_keys(필수)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

substitute_string 프로세서

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

구성

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

processor: - substitute_string: entries: - source: "message" from: "ERROR" to: "WARN"
파라미터
entries(필수)

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

entries[].source(필수)

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

entries[].from(필수)

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

entries[].to(필수)

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

when (선택 사항)

프로세서 수준 조건부 표현식. 지정된 경우 표현식이 false로 평가되면 전체 프로세서를 건너뜁니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

entries[].when (선택 사항)

항목 수준 조건부 표현식. 지정된 경우 표현식이 false로 평가되면 이 항목만 건너뜁니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

entries[].when_else (선택 사항)

동일한 프로세서의 다른 when 조건이 일치하지 않는 경우에만 실행되는 폴백 항목. 표현식 값은 고려할 when 조건을 식별합니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

truncate 프로세서

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

구성

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

processor: - truncate: source_keys: ["message", "description"] length: 100 start_at: 0
파라미터
source_keys(필수)

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

length (선택 사항)

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

start_at (선택 사항)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

extract_value 프로세서

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

구성

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

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

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

entries[].source(필수)

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

entries[].target(필수)

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

entries[].from(필수)

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

entries[].to(필수)

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

entries[].target_type (선택 사항)

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

when (선택 사항)

프로세서 수준 조건부 표현식. 지정된 경우 표현식이 false로 평가되면 전체 프로세서를 건너뜁니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

entries[].when (선택 사항)

항목 수준 조건부 표현식. 지정된 경우 표현식이 false로 평가되면 이 항목만 건너뜁니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

entries[].when_else (선택 사항)

동일한 프로세서의 다른 when 조건이 일치하지 않는 경우에만 실행되는 폴백 항목. 표현식 값은 고려할 when 조건을 식별합니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

convert_entry_type 프로세서

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

구성

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

processor: - convert_entry_type: key: "count" type: "integer"
파라미터
key(필수)

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

type(필수)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

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"
파라미터
match(필수)

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

match[].key(필수)

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

match[].patterns(필수)

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

destination (선택 사항)

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

source_timezone (선택 사항)

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

destination_timezone (선택 사항)

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

output_format (선택 사항)

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

destination_type (선택 사항)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

dissect 프로세서

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

구성

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

processor: - dissect: map: message: "%{timestamp} %{level}"
파라미터
map(필수)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

list_to_map 프로세서

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

구성

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

processor: - list_to_map: source: "tags" key: "name" value_key: "value" target: "tag_map"
파라미터
source(필수)

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

key(필수)

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

value_key (선택 사항)

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

target (선택 사항)

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

flatten (선택 사항)

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

flattened_element (선택 사항)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

rename_keys 프로세서

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

구성

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

processor: - rename_keys: entries: - from_key: "old_name" to_key: "new_name" overwrite_if_to_key_exists: true
파라미터
entries(필수)

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

entries[].from_key(필수)

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

entries[].to_key(필수)

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

entries[].overwrite_if_to_key_exists (선택 사항)

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

when (선택 사항)

프로세서 수준 조건부 표현식. 지정된 경우 표현식이 false로 평가되면 전체 프로세서를 건너뜁니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

entries[].when (선택 사항)

항목 수준 조건부 표현식. 지정된 경우 표현식이 false로 평가되면 이 항목만 건너뜁니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

entries[].when_else (선택 사항)

동일한 프로세서의 다른 when 조건이 일치하지 않는 경우에만 실행되는 폴백 항목. 표현식 값은 고려할 when 조건을 식별합니다. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

select_entries 프로세서

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

구성

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

processor: - select_entries: include_keys: ["timestamp", "level", "message"]
파라미터
include_keys(필수)

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.

translate 프로세서

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

구성

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

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

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

mappings[].source(필수)

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

mappings[].targets(필수)

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

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

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

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

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

when (선택 사항)

이 프로세서의 실행 여부를 결정하는 조건식. 최대 길이는 256자입니다. 조건부 처리를 위한 표현식 구문을(를) 참조하세요.