AWS Elastic Beanstalk 환경의 Windows 인스턴스에서 로그를 수집하려고 합니다.
간략한 설명
Elastic Beanstalk 환경의 Windows 인스턴스에서 로그를 수집하려면 AWSSupport-CollectElasticBeanstalkLogs 자동화를 사용합니다. Windows 인스턴스의 경우, 원격 데스크톱 프로토콜(RDP)을 사용하여 각 Windows 인스턴스에 연결하고 한 번에 하나씩 로그를 수집해야 합니다. 그러나 AWSSupport-CollectElasticBeanstalkLogs 자동화를 사용하여 여러 Windows 인스턴스에서 로그를 자동으로 수집하여 이 수동 프로세스를 피할 수 있습니다.
기본적으로 자동화는 인스턴스에 대한 로그 번들을 .zip 파일로 다음 리소스 중 하나에 업로드합니다.
- 계정의 기본 Elastic Beanstalk 버킷
- 사용자가 지정한 Amazon Simple Storage Service(S3) 버킷
자동화는 다음 위치에서 로그 파일을 수집합니다.
- C:\Program Files\Amazon\ElasticBeanstalk\HealthD\Logs\*
- C:\Program Files\Amazon\ElasticBeanstalk\logs\*
- C:\cfn\log\*
- C:\inetpub\logs\*
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하는 경우 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.
해결 방법
자동화를 실행하려면 AWS Systems Manager 콘솔 또는 AWS CLI를 사용할 수 있습니다.
AWS Systems Manager 콘솔
- Systems Manager 콘솔을 엽니다.
- 탐색 창의 변경 관리에서 자동화를 선택합니다.
- 자동화 실행을 선택합니다.
- Owned by Amazon 탭에서 AWSSupport-CollectElasticBeanstalkLogs 자동화 문서를 검색하여 선택하고 다음을 선택합니다.
- 입력 파라미터 섹션에서 시나리오에 적합한 필드를 입력합니다.
- 실행을 선택합니다.
자동화 진행 상황을 모니터링하려면 다음 단계를 완료하세요.
- Systems Manager 콘솔의 탐색 창에서 변경 관리 섹션의 자동화를 선택합니다.
- 실행 ID 열에서 자동화를 선택합니다.
- 자동화 진행 상황을 검토합니다. 실행 단계 섹션에는 자동화가 현재 어떤 단계인지 표시됩니다. 출력 섹션에는 자동화 실패 시 문제를 해결하는 데 도움이 되는 로그가 포함되어 있습니다.
AWS CLI
1. 번들 로그를 수집하여 계정의 Elastic Beanstalk용 기본 S3 버킷에 업로드합니다.
aws ssm start-automation-execution --document-name "AWSSupport-CollectElasticBeanstalkLogs"\
--parameters "InstanceId=INSTANCEID,\
EnvironmentId=ENVIRONMENTID,\
AutomationAssumeRole=AUTOMATIONROLE"
2. 번들 로그를 수집하여 S3 버킷에 업로드합니다.
aws ssm start-automation-execution --document-name "AWSSupport-CollectElasticBeanstalkLogs"\
--parameters "InstanceId=INSTANCEID,\
EnvironmentId=ENVIRONMENTID,\
S3BucketName=BUCKETNAME,\
S3BucketPath=BUCKETPATH,\
AutomationAssumeRole=AUTOMATIONROLE"
3. 실행 출력을 검색합니다.
aws ssm get-automation-execution --automation-execution-id EXECUTIONID --output text --query 'AutomationExecution.Outputs'