

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 데이터타입 컨버터 프로세서
<a name="CloudWatch-Logs-Transformation-Datatype"></a>

이 섹션에는 로그 이벤트 변환기와 함께 사용할 수 있는 데이터 유형 변환기 프로세서에 대한 정보가 포함되어 있습니다.

**Contents**
+ [typeConverter](#CloudWatch-Logs-Transformation-typeConverter)
+ [datetimeConverter](#CloudWatch-Logs-Transformation-datetimeConverter)

## typeConverter
<a name="CloudWatch-Logs-Transformation-typeConverter"></a>

`typeConverter` 프로세서를 사용하여 지정된 키와 연결된 값 유형을 지정된 유형으로 변환합니다. 지정된 필드의 유형을 변경하는 캐스팅 프로세서입니다. 값은 `integer`, `double` `string` 및 `boolean` 데이터타입 중 하나로 변환할 수 있습니다.


| 필드 | 설명 | 필수 | 기본값 | 제한 사항 | 
| --- | --- | --- | --- | --- | 
|  항목 | 항목의 배열. 배열의 각 항목에는 key 및 type 필드가 포함되어야 합니다. |  예 |  |  최대 항목: 10 | 
|  키 | 다른 유형으로 변환할 값이 있는 키 |  예 |  |  최대 길이: 128 최대 중첩 키 깊이: 3 | 
|  type | 변환할 유형. 유효값은 integer, double, string 및 boolean입니다. |  예 |  |  | 

**예제**

다음 예제 로그 이벤트를 살펴봅니다.

```
{
    "name": "value",
    "status": "200"
}
```

트랜스포머 구성은 `typeConverter`를 `parseJSON`과 사용하는 경우 다음과 같습니다.

```
[
    {
        "parseJSON": {}
    },
    {
        "typeConverter": {
            "entries": [
                {
                    "key": "status",
                    "type": "integer"
                }
            ]
        }
    }
]
```

변환된 로그 이벤트는 다음과 같습니다.

```
{
    "name": "value",
    "status": 200
}
```

## datetimeConverter
<a name="CloudWatch-Logs-Transformation-datetimeConverter"></a>

`datetimeConverter` 프로세서를 사용하여 날짜/시간 문자열을 지정한 형식으로 변환합니다.


| 필드 | 설명 | 필수 | 기본값 | 제한 사항 | 
| --- | --- | --- | --- | --- | 
|  source | 날짜 변환을 적용할 키. |  예 |  |  최대 항목: 10 | 
|  matchPatterns | source 필드를 매칭할 패턴의 목록 |  예 |  |  최대 항목: 5 | 
|  대상 | 결과를 저장할 JSON 필드. |  예 |  |  최대 길이: 128 최대 중첩 키 깊이: 3 | 
|  targetFormat | 대상 필드의 변환된 데이터에 사용할 날짜/시간 형식. |  아니요 | ` yyyy-MM-dd'T'HH:mm:ss.SSS'Z` |  최대 길이: 64 | 
|  sourceTimezone | 소스 필드의 시간대. 가능한 값의 목록은 [Java 지원되는 영역 ID 및 오프셋](https://howtodoinjava.com/java/date-time/supported-zone-ids-offsets/#3-java-supported-zone-ids-and-offsets)을 참조하세요. |  아니요 | UTC |  최소 길이: 1 | 
|  targetTimezone | 대상 필드의 시간대. 가능한 값의 목록은 [Java 지원되는 영역 ID 및 오프셋](https://howtodoinjava.com/java/date-time/supported-zone-ids-offsets/#3-java-supported-zone-ids-and-offsets)을 참조하세요. |  아니요 | UTC |  최소 길이: 1 | 
|  locale | 소스 필드의 로케일. 가능한 값의 목록은 [예제가 포함된 Java의 Locale getAvailableLocales() Method](https://www.geeksforgeeks.org/locale-getavailablelocales-method-in-java-with-examples/)를 참조하세요. |  예 |  |  최소 길이: 1 | 

**예제**

다음 예제 로그 이벤트를 살펴봅니다.

```
{"german_datetime": "Samstag 05. Dezember 1998 11:00:00"}
```

트랜스포머 구성은 `dateTimeConverter`를 `parseJSON`과 사용하는 경우 다음과 같습니다.

```
[
    {
        "parseJSON": {}
    },
    {
        "dateTimeConverter": {
            "source": "german_datetime",
            "target": "target_1",
            "locale": "de",
            "matchPatterns": ["EEEE dd. MMMM yyyy HH:mm:ss"],
            "sourceTimezone": "Europe/Berlin",
            "targetTimezone": "America/New_York",
            "targetFormat": "yyyy-MM-dd'T'HH:mm:ss z"
        }
    }
]
```

변환된 로그 이벤트는 다음과 같습니다.

```
{
    "german_datetime": "Samstag 05. Dezember 1998 11:00:00",
    "target_1": "1998-12-05T17:00:00 MEZ"
}
```