

# 콘솔에서 Amazon ECS 이벤트 캡처
<a name="task-lifecycle-events"></a>

Amazon ECS 콘솔은 서비스 작업 및 태스크 상태 변경과 같은 Amazon ECS 생성 이벤트를 EventBridge를 통해 Amazon CloudWatch Logs에 저장하는 이벤트 캡처 기능을 제공합니다. 이 기능에는 모니터링 및 문제 해결을 위한 필터링 기능이 있는 쿼리 인터페이스가 포함되어 있습니다.

이벤트는 서비스 배포, 서비스, 태스크 및 인스턴스의 작동 방식에 대한 자세한 정보를 제공합니다. 이 정보를 사용하여 태스크 또는 서비스 배포 장애 문제를 해결할 수 있습니다.

이벤트 캡처를 켜면 Amazon ECS가 선택한 보존 기간에 생성하는 모든 이벤트에 액세스할 수 있으며, 필터링되지 않은 마지막 이벤트 100개 또는 단 1시간 동안 표시되는 중지된 태스크의 기본 제한 이상으로 확장됩니다.

## 작동 방식
<a name="task-lifecycle-events-overview"></a>

이벤트 캡처는 EventBridge를 사용하여 사전 정의된 Amazon CloudWatch Logs 로그 그룹에 이벤트를 저장합니다. Amazon ECS 콘솔은 사전 빌드된 쿼리 및 필터링 옵션을 제공하고 이벤트를 상호 연관시켜 직관적인 형식으로 태스크 수명 주기를 제공합니다.

다음 유형의 이벤트를 쿼리하고 검색할 수 있습니다.
+ **서비스 작업 이벤트** - 프로비저닝 또는 리소스 할당 문제를 식별하는 데 도움이 됩니다.
+ **태스크 수명 주기 이벤트** - 태스크 또는 컨테이너가 시작되지 않거나 실행이 중지되는 이유를 식별하는 데 도움이 됩니다.

Amazon ECS 콘솔을 사용하면 클릭 한 번으로 이벤트 캡처를 설정할 수 있으며 쿼리 언어를 배우거나 여러 콘솔 간에 이동할 필요 없이 일반적으로 사용되는 쿼리 및 필터링을 제공합니다.

## 이벤트 유형
<a name="task-lifecycle-events-types"></a>

이벤트 캡처는 모든 Amazon ECS 생성 이벤트를 다음 범주로 저장합니다.

태스크 상태 변경 이벤트  
문제 해결 또는 태스크 수명 주기 타임라인 모니터링에 사용할 수 있는 컨테이너 중지 및 기타 종료 이벤트.

서비스 작업  
안정 상태 도달, 태스크 배치 실패 또는 리소스 제약과 같은 이벤트.

서비스 배포 상태 변경 사항  
서비스 배포의 상태를 모니터링하기 위해 회로 차단기 및 롤백 설정에 의해 트리거되는 진행 중, 완료 또는 실패한 배포와 같은 이벤트.

컨테이너 인스턴스 상태 변경 사항  
EC2 및 Amazon ECS 관리형 인스턴스의 워크로드인 경우 이벤트에 연결 및 연결 해제 상태가 표시됩니다.

## 로그 그룹 구성
<a name="task-lifecycle-events-log-group"></a>

이벤트 캡처를 켜면 Amazon ECS는 다음 리소스를 자동으로 생성합니다.
+ Amazon CloudWatch Logs 로그 그룹(`/aws/events/ecs/containerinsights/${clusterName}/performance`)
+ `aws.ecs` 소스에서 모든 이벤트를 수집하여 로그 그룹으로 전달하는 EventBridge 규칙

로그 그룹의 보존 기간을 1일에서 10년까지 지정할 수 있습니다. 기본 보존 기간은 7일입니다.

## 고려 사항
<a name="task-lifecycle-events-limitations"></a>

용량 공급자를 사용할 경우 다음을 고려합니다.
+ 이벤트 캡처는 단순성을 위해 모든 이벤트를 저장합니다. Amazon ECS 콘솔에서는 특정 이벤트만 캡처하도록 규칙을 구성할 수 없습니다.
+ Amazon ECS 콘솔은 사전 정의된 쿼리 기준을 제공합니다. 고급 쿼리의 경우 Amazon CloudWatch Logs의 Logs Insights를 사용하여 로그 그룹을 직접 쿼리합니다.
+ Amazon ECS 콘솔에서는 라이브 테일 기능을 사용할 수 없습니다. 라이브 테일을 사용하려면 Amazon CloudWatch Logs를 직접 사용합니다.
+ 이벤트 캡처를 비활성화하면 EventBridge 규칙이 삭제됩니다.
+ 이벤트 캡처에는 EventBridge 데이터 수집, Amazon CloudWatch Logs 스토리지 및 쿼리 실행에 대한 추가 비용이 발생합니다.

  EventBridge 요금에 대한 자세한 내용은 [EventBridge 요금](https://aws.amazon.com/eventbridge/pricing/)을 참조하세요.

  CloudWatch 요금에 대한 자세한 내용은 [CloudWatch 요금](https://aws.amazon.com/cloudwatch/pricing/)을 참조하세요.

## 이벤트 기반 문제 해결
<a name="task-lifecycle-events-troubleshooting"></a>

Amazon ECS 생성 이벤트를 사용하여 일반적인 문제 해결 질문에 답변합니다.

### 태스크 장애 분석
<a name="task-lifecycle-events-task-failures"></a>

`STOPPED` 태스크 상태 변경 이벤트, 중지 코드 및 컨테이너 종료 코드를 검토하여 태스크가 시작되지 않거나 실행 중에 실패한 이유를 확인할 수 있습니다.

배치 장애에 대한 서비스 작업 이벤트 및 리소스 제약 정보를 검토하여 리소스 제약 조건으로 인해 태스크가 배치되지 않은 이유를 확인할 수 있습니다.

### 일반적인 태스크 장애 시나리오
<a name="task-lifecycle-events-common-issues"></a>

가장 일반적인 비정상 태스크 장애는 다음 문제와 관련이 있습니다.
+ CI/CD 서비스 배포 장애
+ 오토 스케일링 장애
+ 태스크 리밸런싱 장애
+ 메모리 부족(OOM) 오류와 같은 비정상적인 컨테이너 종료

비정상 태스크 장애는 `EssentialContainerExited` 또는 `TaskFailedToStart` 중지 코드와 함께 `STOPPED` 태스크 상태 변경 이벤트를 생성합니다. 이러한 중지 코드를 기준으로 필터링하여 컨테이너 실행 및 중지 동작을 검사할 수 있습니다.