

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

# 시스템 로그 전달자
<a name="system-log-forwarder-component"></a>

시스템 로그 전달자(`aws.greengrass.SystemLogForwarder`)는 활성 시스템 로그를 CloudWatch HTTPS API를 사용해 Amazon CloudWatch로 직접 업로드합니다.

**중요**  
이 구성 요소는 런타임 중에 생성된 systemd-journald 로그만 전달합니다. systemd-journald 로그에 대한 자세한 내용은 [systemd-journald](https://www.freedesktop.org/software/systemd/man/latest/systemd-journald.service.html) 및 [journalctl](https://www.freedesktop.org/software/systemd/man/latest/journalctl.html#)을 참조하세요.

**참고**  
이 구성 요소는 CloudWatch 로그 그룹과 스트림을 생성하고 관리할 수 있는 특정 권한이 필요합니다.

**Topics**
+ [버전](#system-log-forwarder-component-versions)
+ [Type](#system-log-forwarder-component-type)
+ [운영 체제](#system-log-forwarder-component-os-support)
+ [요구 사항](#system-log-forwarder-component-requirements)
+ [엔드포인트 및 포트](#system-log-forwarder-component-endpoints)
+ [종속성](#system-log-forwarder-component-dependencies)
+ [구성](#system-log-forwarder-component-configuration)
+ [Changelog](#system-log-forwarder-component-changelog)

## 버전
<a name="system-log-forwarder-component-versions"></a>

이 구성 요소에는 다음과 같은 버전이 있습니다.
+ 2.1.x
+ 2.0.x

## Type
<a name="system-log-forwarder-component-type"></a>

<a name="public-component-type-generic"></a>이 <a name="public-component-type-generic-phrase"></a>구성 요소는 일반 구성 요소(`aws.greengrass.generic`)입니다. [Greengrass nucleus](greengrass-nucleus-component.md)는 구성 요소의 수명 주기 스크립트를 실행합니다.

<a name="public-component-type-more-information"></a>자세한 내용은 [구성 요소 유형](develop-greengrass-components.md#component-types) 단원을 참조하십시오.

## 운영 체제
<a name="system-log-forwarder-component-os-support"></a>

이 구성 요소는 systemd 기반 Linux 시스템에 설치해야 합니다.

## 요구 사항
<a name="system-log-forwarder-component-requirements"></a>

이 구성 요소에는 다음과 같은 요구 사항이 있습니다.

이 구성 요소는 CloudWatch에서 로그 및 스트림 그룹을 생성할 수 있는 액세스 권한과 PutLogEvents HTTP 호출을 수행할 수 있는 권한이 필요합니다. 최소한, Greengrass 디바이스의 역할 별칭에 다음 정책 권한을 추가해야 합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
    {
      "Effect": "Allow",
      "Action": ["logs:CreateLogGroup"],
      "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:*"
    },
    {
      "Effect": "Allow",
      "Action": ["logs:CreateLogStream", "logs:PutLogEvents"],
      "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:log-stream:${credentials-iot:ThingName}"
    }
  ]
}
```

------

**참고**  
자세한 내용은 시스템 로그 전달자 [GitHub](https://github.com/aws-greengrass/aws-greengrass-system-log-forwarder) 페이지를 참조하세요.

## 엔드포인트 및 포트
<a name="system-log-forwarder-component-endpoints"></a>

이 구성 요소는 기본 작업에 필요한 엔드포인트 및 포트 외에 다음 엔드포인트 및 포트에 대한 아웃바운드 요청도 수행할 수 있어야 합니다. 자세한 내용은 [프록시 또는 방화벽을 통해 디바이스 트래픽 허용](allow-device-traffic.md) 단원을 참조하십시오.


| 엔드포인트 | 포트 | 필수 | 설명 | 
| --- | --- | --- | --- | 
|  `logs.region.amazonaws.com`  | 443 | 아니요 |  CloudWatch Logs에 로그를 쓰는 경우 필요합니다.  | 

## 종속성
<a name="system-log-forwarder-component-dependencies"></a>

구성 요소를 배포할 때는 호환되는 버전의 종속성 AWS IoT Greengrass 도 배포합니다. 즉, 구성 요소를 성공적으로 배포하려면 구성 요소 및 모든 해당 종속성에 대한 요구 사항을 충족해야 합니다. 이 섹션에는 이 구성 요소의 [릴리스된 버전](#system-log-forwarder-component-changelog)에 대한 종속성과 각 종속성에 대한 구성 요소 버전을 정의하는 의미 체계 버전 제약 조건이 나열되어 있습니다. [AWS IoT Greengrass 콘솔](https://console.aws.amazon.com//greengrass)에서도 각 구성 요소 버전에 대한 종속성을 볼 수 있습니다. 구성 요소 세부 정보 페이지에서 **종속성** 목록을 찾습니다.

------
#### [ 2.1.x ]

다음 표에는이 구성 요소의 버전 2.1.x에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [토큰 교환 서비스](token-exchange-service-component.md) | >=2.0.0 | 하드 | 
| [Greengrass nucleus lite](greengrass-nucleus-lite-component.md) | >=2.3.0 | 소프트 | 

------
#### [ 2.0.x ]

다음 표에는 이 구성 요소의 버전 2.0.x에 대한 종속성이 나열되어 있습니다.


| 종속성 | 호환 버전 | 종속성 유형 | 
| --- | --- | --- | 
| [토큰 교환 서비스](token-exchange-service-component.md) | >=2.0.0 | 하드 | 

------

## 구성
<a name="system-log-forwarder-component-configuration"></a>

이 구성 요소는 구성 요소를 배포할 때 사용자 지정할 수 있는 다음 구성 파라미터를 제공합니다.

------
#### [ 2.0.x-2.1.x ]

`maxUploadIntervalSec`  
시스템 로그 전달자가 로그를 업로드하려고 시도하는 최대 주기입니다. 로그 전달자는 메모리가 가득 찼을 때도 로그를 업로드하므로, 구성된 최대 주기보다 더 자주 업로드될 수 있습니다.

`maxRetriesCount`  
시스템 로그 전달자가 일시적인 HTTP 오류 발생 시 재시도하는 횟수입니다.

`bufferCapacity`  
메모리 내 로그 저장용 링 버퍼의 크기입니다.

`logGroup`  
CloudWatch에서의 로그 경로입니다.

`logStream`  
CloudWatch logStream입니다.

`filters`  
코어 디바이스에 대한 필터 구성 맵입니다.    
`services`  
시스템 로그 전달자가 로그 업로드 여부를 결정할 때 참조하는 서비스 이름 필터 목록입니다. 로그는 생성된 서비스가 이 목록의 필터 중 하나와 일치할 경우에만 업로드됩니다. 이 목록의 필터는 서비스 이름과 정확히 일치하는 문자열이거나, 뒤에 \$1가 붙어 접두사가 일치하면 되는 문자열일 수 있습니다.  
기본값: `[ggl.*]`  
로그는 생성된 서비스가 이 목록의 필터 중 하나와 일치할 경우에만 업로드됩니다.
\$1 값을 사용하면 사용 가능한 모든 서비스를 포함합니다.

**Example 구성 예제:**  
아래 예시는 Greengrass nucleus lite에 포함된 모든 서비스의 로그를 필터링하는 방법을 보여줍니다.  

```
{
    "maxUploadIntervalSec": 300,
    "maxRetriesCount": 3,
    "bufferCapacity": 1048576,
    "logGroup": "greengrass/systemLogs",
    "logStream": "deviceName",
    "filters": {
        "services": ["ggl.*"]
    }
}
```

------

## Changelog
<a name="system-log-forwarder-component-changelog"></a>

다음 표에는 각 구성 요소 버전의 변경 사항이 설명되어 있습니다.


|  **버전**  |  **변경 사항**  | 
| --- | --- | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/system-log-forwarder-component.html)  | 
|  2.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/greengrass/v2/developerguide/system-log-forwarder-component.html)  | 
|  2.0.0  |  초기 버전입니다.  | 