

# Amazon ECS 로그 수집기를 사용하여 컨테이너 로그 수집
<a name="ecs-logs-collector"></a>

**참고**  
Amazon ECS 관리형 인스턴스에서는 Amazon ECS 로그 수집기를 사용할 수 없습니다.

컨테이너 인스턴스에서 다양한 로그를 모두 수집하는 방법을 잘 모르겠다면 Amazon ECS 로그 수집기를 사용하면 됩니다. 이것은 [Linux](https://github.com/awslabs/ecs-logs-collector) 및 [Windows](https://github.com/awslabs/aws-ecs-logs-collector-for-windows)용 GitHub에서 모두 사용할 수 있습니다. 스크립트는 일반적인 운영 체제 로그와 AWS Support 사례 문제 해결에 도움이 될 수 있는 Docker 및 Amazon ECS 컨테이너 에이전트 로그를 수집합니다. 그런 다음 수집된 정보를 진단 목적을 위해 쉽게 공유할 수 있는 단일 파일로 압축해 보관합니다. 또한 Amazon ECS 최적화 AMI와 같은 Amazon Linux 변형에서 Docker 대몬과 Amazon ECS 컨테이너 에이전트의 디버그 모드 활성화도 지원합니다.

**참고**  
Amazon Linux Amazon ECS 최적화 AMI 버전 20250909 이상에서는 Amazon ECS 로그 수집기가 `/opt/amazon/ecs/ecs-logs-collector.sh`에 사전 설치되어 있으며, GitHub에서 별도로 다운로드하지 않아도 바로 사용할 수 있습니다. 자세한 내용은 ECS 최적화 AMI 설명서의 [ECS 로그 수집기](https://github.com/aws/amazon-ecs-ami?tab=readme-ov-file#ecs-logs-collector)를 참조하세요.

현재 Amazon ECS 로그 수집기가 지원하는 운영 체제는 다음과 같습니다.
+ Amazon Linux
+ Red Hat Enterprise Linux
+ Ubuntu
+ Windows Server

**Linux용 Amazon ECS 로그 수집기(ECS 최적화 AMI)를 실행하려면**

1. 컨테이너 인스턴스에 연결합니다.

1. 스크립트를 실행해 로그를 수집하고 아카이브를 생성합니다.
**참고**  
Docker 대몬과 Amazon ECS 컨테이너 에이전트에 대해 디버그 모드를 활성화하려면 `--mode=enable-debug` 옵션을 다음 명령에 추가합니다. 인스턴스에서 실행 중인 모든 컨테이너를 종료하는 Docker 대몬이 다시 시작될 수 있습니다. 디버그 모드를 활성화하기 전에 컨테이너 인스턴스 드레이닝과 다른 컨테이너 인스턴스로의 중요한 작업 이동을 고려합니다. 자세한 내용은 [Amazon ECS 컨테이너 인스턴스 드레이닝](container-instance-draining.md) 섹션을 참조하세요.

   ```
   [ec2-user ~]$ sudo /opt/amazon/ecs/ecs-logs-collector.sh
   ```

스크립트를 실행한 후 스크립트가 생성한 `collect` 폴더에서 수집된 로그를 검사할 수 있습니다. `collect.tgz` 파일은 모든 로그가 압축된 아카이브로서 진단 지원을 위해 AWS Support와 공유할 수 있습니다.

**Linux용 Amazon ECS 로그 수집기를 다운로드하고 실행하려면**

1. 컨테이너 인스턴스에 연결합니다.

1. Amazon ECS 로그 수집기 스크립트를 다운로드합니다.

   ```
   curl -O https://raw.githubusercontent.com/awslabs/ecs-logs-collector/master/ecs-logs-collector.sh
   ```

1. 스크립트를 실행해 로그를 수집하고 아카이브를 생성합니다.

   ```
   $ sudo bash ./ecs-logs-collector.sh
   ```

**Windows용 Amazon ECS 로그 수집기를 다운로드하고 실행하려면**

1. 컨테이너 인스턴스에 연결합니다. 자세한 내용은 *Amazon EC2 사용 설명서*의 [RDP를 사용하여 Windows 인스턴스에 연결](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connecting_to_windows_instance.html)을 참조하세요.

1. PowerShell을 사용하여 Amazon ECS 로그 수집기 스크립트를 다운로드합니다.

   ```
   Invoke-WebRequest -OutFile ecs-logs-collector.ps1 https://raw.githubusercontent.com/awslabs/aws-ecs-logs-collector-for-windows/master/ecs-logs-collector.ps1
   ```

1. 스크립트를 실행해 로그를 수집하고 아카이브를 생성합니다.
**참고**  
Docker 대몬과 Amazon ECS 컨테이너 에이전트에 대해 디버그 모드를 활성화하려면 `-RunMode debug` 옵션을 다음 명령에 추가합니다. 인스턴스에서 실행 중인 모든 컨테이너를 종료하는 Docker 대몬이 다시 시작됩니다. 디버그 모드를 활성화하기 전에 컨테이너 인스턴스 드레이닝과 다른 컨테이너 인스턴스로의 중요한 작업 이동을 고려합니다. 자세한 내용은 [Amazon ECS 컨테이너 인스턴스 드레이닝](container-instance-draining.md) 섹션을 참조하세요.

   ```
   .\ecs-logs-collector.ps1
   ```

스크립트를 실행한 후 스크립트가 생성한 `collect` 폴더에서 수집된 로그를 검사할 수 있습니다. `collect.tgz` 파일은 모든 로그가 압축된 아카이브로서 진단 지원을 위해 AWS Support와 공유할 수 있습니다.