

# Amazon Data Firehose에 게시하는 흐름 로그 생성
<a name="flow-logs-firehose-create-flow-log"></a>

VPC, 서브넷 또는 네트워크 인터페이스에 대한 흐름 로그를 생성할 수 있습니다.

**사전 조건**
+ 대상 Amazon Data Firehose 전송 스트림을 생성합니다. **Direct Put**을 원본으로 사용합니다. 자세한 내용은 [Amazon Data Firehose 전송 스트림 생성](https://docs.aws.amazon.com/firehose/latest/dev/basic-create.html)을 참조하세요.
+ 흐름 로그를 생성하는 계정은 Amazon Data Firehose에 흐름 로그를 게시할 수 있는 다음 권한을 부여하는 IAM 역할을 사용해야 합니다.

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

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "logs:CreateLogDelivery",
                  "logs:DeleteLogDelivery",
                  "iam:CreateServiceLinkedRole",
                  "firehose:TagDeliveryStream"
              ],
              "Resource": "*"
          }
      ]
  }
  ```

------
+ 흐름 로그를 다른 계정에 게시하는 경우 [교차 계정 전송에 대한 IAM 역할](firehose-cross-account-delivery.md)에 설명된 대로 필수 IAM 역할을 생성합니다.

**Amazon Data Firehose에 게시하는 흐름 로그 생성 방법**

1. 다음 중 하나를 수행하세요.
   + [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다. 탐색 창에서 **Network Interfaces**를 선택합니다. 네트워크 인터페이스의 확인란을 선택합니다.
   + [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)에서 Amazon VPC 콘솔을 엽니다. 탐색 창에서 **Your VPCs**를 선택합니다. VPC에 대한 확인란을 선택합니다.
   + [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)에서 Amazon VPC 콘솔을 엽니다. 탐색 창에서 **Subnets**를 선택합니다. 서브넷의 확인란을 선택합니다.

1. **작업**, **흐름 로그 생성**을 선택합니다.

1. **필터(Filter)**에 기록할 트래픽 유형을 지정합니다.
   + **수락** – 수락한 트래픽만 로그합니다.
   + **거부** – 거부한 트래픽만 로그합니다.
   + **모두** – 수락 및 거부한 트래픽을 로그합니다.

1. **최대 집계 간격(Maximum aggregation interval)**에서 흐름이 캡처되어 흐름 로그 레코드로 집계되는 최대 기간을 선택합니다.

1. **대상(Destination)**에서는 다음과 같은 옵션 중 하나를 선택합니다.
   + **동일한 계정의 Amazon Data Firehose로 보내기** - 전송 스트림과 모니터링할 리소스가 동일한 계정에 있습니다.
   + **다른 계정의 Amazon Data Firehose로 보내기** - 전송 스트림과 모니터링할 리소스가 상이한 계정에 있습니다.

1. **Amazon Data Firehose** 스트림 이름에는 생성한 전송 스트림을 선택합니다.

1. [크로스 계정 전송만 해당] **서비스 액세스**의 경우 로그를 게시할 권한이 있는 [크로스 계정 전송을 위한 기존 IAM 서비스 역할](firehose-cross-account-delivery.md)을 선택하거나 **권한 설정**을 선택하여 IAM 콘솔을 열고 서비스 역할을 생성합니다.

1. **로그 레코드 형식**에서 흐름 로그 레코드의 형식을 지정합니다.
   + 기본 흐름 로그 레코드 형식을 사용하려면 **AWS 기본 형식**을 선택하세요.
   + 사용자 지정 형식을 만들려면 **사용자 지정 형식**을 선택하세요. **로그 형식**에 대해 흐름 로그 레코드에 포함할 필드를 선택하세요.

1. **추가 메타데이터**에서 Amazon ECS의 메타데이터를 로그 형식으로 포함할지 선택합니다.

1. (선택 사항) **태그 추가**를 선택하여 흐름 로그에 태그를 적용합니다.

1. **흐름 로그 생성**을 선택합니다.

**명령줄을 사용하여 Amazon Data Firehose에 게시하는 흐름 로그 생성**

다음 명령 중 하나를 사용합니다.
+ [create-flow-logs](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-flow-logs.html)(AWS CLI)
+ [New-EC2FlowLog](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2FlowLog.html)(AWS Tools for Windows PowerShell)

다음 AWS CLI 예시에서는 지정된 VPC의 모든 트래픽을 캡처하고 동일한 계정의 지정된 Amazon Data Firehose 전송 스트림에 흐름 로그를 전송하는 흐름 로그를 생성합니다.

```
aws ec2 create-flow-logs --traffic-type ALL \
  --resource-type VPC \
  --resource-ids vpc-00112233344556677 \
  --log-destination-type kinesis-data-firehose \
  --log-destination arn:aws:firehose:us-east-1:123456789012:deliverystream/flowlogs_stream
```

다음 AWS CLI 예시에서는 지정된 VPC의 모든 트래픽을 캡처하고 상이한 계정의 지정된 Amazon Data Firehose 전송 스트림에 흐름 로그를 전송하는 흐름 로그를 생성합니다.

```
aws ec2 create-flow-logs --traffic-type ALL \
  --resource-type VPC \
  --resource-ids vpc-00112233344556677 \
  --log-destination-type kinesis-data-firehose \
  --log-destination arn:aws:firehose:us-east-1:123456789012:deliverystream/flowlogs_stream \
  --deliver-logs-permission-arn arn:aws:iam::source-account:role/mySourceRole \ 
  --deliver-cross-account-role arn:aws:iam::destination-account:role/AWSLogDeliveryFirehoseCrossAccountRole
```

전송 스트림에 대해 구성한 대상에서 흐름 로그 데이터를 가져올 수 있습니다.