구독 필터, Logs Insights 쿼리, Amazon Simple Storage Service(Amazon S3) 내보내기, CloudWatch API, 로그를 CSV 파일로 다운로드하는 등의 방법을 사용하여 Amazon CloudWatch Logs에서 로그 데이터를 검색하고 싶습니다.
해결 방법
참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생하면 AWS CLI의 오류 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
CloudWatch 로그에서 로그 데이터를 검색하려면 다음 모범 사례를 사용하십시오.
구독 필터를 사용하여 로그 데이터 스트리밍
CloudWatch 로그에서 로그 데이터를 실시간으로 검색하려면 구독 필터를 사용하세요. 로그 데이터 구독 필터는 CloudWatch API 스로틀링을 방지합니다. 자세한 내용은 구독을 통한 로그 데이터의 실시간 처리 및 로그 그룹 수준 구독 필터를 참조하세요.
참고: Amazon Kinesis Data Streams는 스로틀링된 서비스 API를 자동으로 재시도합니다.
CloudWatch API 사용
로그 데이터를 수동으로 찾으려면 GetLogEvents 또는 FilterLogEvents CloudWatch API 작업을 사용하십시오. 초당 전송(TPS) 할당량 때문에 이러한 API 작업의 규모를 조정할 수 없습니다. GetLogEvents API 작업은 토큰을 통해 사용할 수 있는 로그 이벤트가 더 많을 경우 빈 결과를 반환할 수 있습니다. 현재 할당량에 대해서는 CloudWatch 로그 할당량을 참조하십시오. API 스로틀링이 발생하면 구독 필터를 사용하십시오.
CloudWatch Logs Insights 쿼리 실행
로그 데이터를 검색하고 분석하려면 CloudWatch Logs Insights에서 쿼리를 실행하십시오. 쿼리는 문제에 대응하고 추가 문제 해결을 위한 원인을 파악하는 데 도움이 됩니다. 자세한 내용은 CloudWatch Logs Insights로 로그 데이터 분석을 참조하십시오.
로그 데이터를 Amazon S3로 내보내기
일괄 사용 사례에서 CloudWatch Logs 데이터를 Amazon S3로 내보낼 수 있습니다. 로그 데이터 내보내기는 CloudWatch Logs에서 사용할 수 있게 되는 데 최대 12시간이 걸릴 수 있습니다. 실시간 분석 및 처리를 위해서는 구독 필터를 사용하십시오.
참고: AWS 계정에는 PENDING, PENDING_CANCEL 또는 RUNNING 상태의 로그 데이터에 대한 내보내기 작업이 하나만 있을 수 있습니다.
로그를 .csv 파일로 다운로드
CloudWatch 콘솔, AWS CLI 또는 CloudWatch 로그 인사이트를 사용하여 로그 데이터를 검색할 수 있습니다.CloudWatch 콘솔 사용
다음 단계를 완료하십시오.
- CloudWatch 콘솔을 엽니다.
- 로그 그룹을 선택합니다.
- 다운로드하려는 로그 이벤트가 포함된 로그 스트림을 선택합니다.
- 작업을 선택한 다음 검색 결과 다운로드를 선택합니다.
AWS CLI 사용
.csv 파일 형식의 로그 이벤트를 검색하려면 다음 get-log-events AWS CLI 명령을 실행합니다.
aws logs get-log-events --log-group-name example-loggroup-name --log-stream-name example-logstream-name --start-time 1705147529 --end-time 1705233929 log_events.csv
참고: example-loggroup-name을 로그 그룹 이름으로, example-logstream-name을 로그 스트림 이름으로 바꾸고, 1705147529를 시작 시간으로, 1705233929를 종료 시간으로 바꿉니다.
.csv 파일은 명령이 시작된 것과 동일한 디렉터리에 저장됩니다. 또한 AWS CLI는 워크스테이션에 대해 구성된 기본 AWS 리전 및 프로필을 사용합니다. 앞의 AWS CLI 명령에서 워크스테이션의 리전을 지정합니다.
CloudWatch Logs Insights를 사용하여 로그 데이터를 검색
쿼리를 실행하여 로그 데이터를 검색합니다. 로그가 10,000개 미만인 데이터를 내보내려면 결과 내보내기를 선택합니다. 또는 10,000개가 넘는 로그에 대한 데이터를 내보내려면 로그를 S3 버킷으로 내보낸 다음 데이터를 .csv 파일로 다운로드합니다.