기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
예약된 쿼리 문제 해결
이러한 문제 해결 주제를 사용하여 예약된 쿼리와 관련된 일반적인 문제를 해결합니다.
권한 오류와 함께 쿼리 실행 실패
예약된 쿼리가 실행되거나 대상에 결과를 전달하지 못하게 하는 권한 오류를 해결합니다.
권한 오류는 실행 역할에 로그 그룹에서 읽거나 대상 리소스에 쓰는 데 필요한 권한이 없을 때 발생합니다.
권한 오류를 해결하려면
-
실행 역할에 대상 로그 그룹에 대한
logs:StartQuerylogs:GetQueryResults, 및logs:DescribeLogGroups권한이 있는지 확인합니다. -
실행 역할에 대상 리소스(예: S3 버킷)
s3:PutObject에 대한 쓰기 권한이 있는지 확인합니다. -
신뢰 정책에서 CloudWatch Logs가 실행 역할을 수임하도록 허용하는지 확인합니다. 역할은 신뢰 정책에서 로그 서비스 보안 주체(
logs.amazonaws.com)를 신뢰해야 합니다.
일반적인 원인으로는 IAM 권한 누락, 정책의 잘못된 리소스 ARNs 또는 신뢰 정책 구성 문제가 있습니다.
권한 오류를 방지하려면 실행 역할을 생성할 때 최소 권한 원칙을 사용하고 예약된 쿼리를 프로덕션에 배포하기 전에 권한을 테스트합니다.
쿼리 시간 초과
예약된 쿼리가 최대 실행 시간 제한을 초과할 때 발생하는 제한 시간 오류를 해결합니다.
쿼리 제한 시간은 쿼리가 지정된 데이터 범위를 처리하는 데 60분 이상 걸릴 때 발생합니다. 이는 종종 대규모 데이터 세트 또는 복잡한 쿼리 로직으로 인해 발생합니다.
제한 시간 오류를 해결하려면
-
시작 시간 오프셋을 줄여 실행당 더 적은 데이터를 처리하여 시간 범위를 줄입니다.
-
쿼리 초기에 필터를 추가하여 처리되는 데이터의 양을 줄여 쿼리를 최적화합니다. 필터 인덱스를 사용하여 데이터 스캔 크기를 줄입니다.
-
복잡한 쿼리를 더 간단하고 집중적인 쿼리로 나누는 것이 좋습니다.
일반적인 원인으로는 대규모 시간 범위 쿼리, 대용량 로그 그룹 처리 또는 적절한 필터링 없이 복잡한 집계 사용 등이 있습니다.
제한 시간을 방지하려면 CloudWatch Logs Insights에서 예상 데이터 볼륨으로 쿼리를 수동으로 테스트하고 예약 전에 성능을 최적화합니다.
대상 처리 실패
예약된 쿼리 결과를 구성된 대상으로 전송할 수 없을 때 발생하는 실패를 해결합니다.
대상 Amazon S3 버킷 또는 EventBridge 이벤트 버스에 액세스할 수 없거나 잘못 구성된 경우 대상 처리 실패가 발생합니다.
쿼리 결과가 대상에 게시되지 않는 실패를 해결하려면
-
지정된 Amazon S3 버킷이 존재하고 액세스할 수 있는지 확인합니다.
-
대상 구성에서 올바른 URIs 확인합니다.
-
실행 역할에 대상에 쓰는 데 필요한 권한이 있는지 확인합니다.
일반적인 원인으로는 삭제되거나 이름이 변경된 대상 리소스, 잘못된 대상 URIs 또는 네트워크 연결 문제가 있습니다.
대상 장애를 방지하려면 대상 구성을 정기적으로 검증하고 대상 리소스 가용성을 모니터링합니다.
잘못된 쿼리 오류
성공적인 실행을 방해하는 예약된 쿼리 문자열의 구문 및 로직 오류를 해결합니다.
쿼리 문자열에 구문 오류가 포함되거나 존재하지 않는 필드를 참조하거나 지원되지 않는 쿼리 언어 기능을 사용하는 경우 잘못된 쿼리 오류가 발생합니다.
잘못된 쿼리 오류를 해결하려면
-
CloudWatch Logs Insights에서 쿼리를 수동으로 테스트하여 구문과 로직을 확인합니다.
-
참조된 모든 로그 필드가 대상 로그 그룹에 존재하는지 확인합니다.
-
사용 중인 쿼리 언어 기능이 예약된 쿼리에 대해 지원되는지 확인합니다.
일반적인 원인으로는 필드 이름의 오타, 잘못된 쿼리 구문 또는 예약된 실행 환경에서 지원되지 않는 쿼리 기능 사용이 있습니다.
잘못된 쿼리 오류를 방지하려면 예약하기 전에 항상 대화형으로 쿼리를 테스트하고 필드 검색 기능을 사용하여 필드 이름을 확인합니다.
동시성 오류 쿼리
예약된 쿼리가 Cloudwatch Logs 인사이트 쿼리와 동일한 할당량을 사용하므로 동시성 오류가 발생할 때 유의해야 할 몇 가지 중요한 사항이 아래에 나와 있습니다. 동시성 한도에 도달하지 않도록 일정을 분산하는 것이 좋습니다.
-
할당량: AWS 계정당 최대 30개의 동시 CloudWatch Logs Insights 쿼리를 실행할 수 있습니다.
-
대시보드: CloudWatch 대시보드에 추가된 쿼리도이 동시성 제한에 포함됩니다. 대시보드가 로드되거나 새로 고쳐질 때 실행되기 때문입니다.
-
OpenSearch Service PPL/SQL: 30개의 동시 쿼리 내에서 하위 집합(현재 15개)은 OpenSearch PPL 또는 OpenSearch SQL을 사용할 수 있습니다.
-
교차 계정 쿼리: 동시성 할당량은 단일 및 교차 계정 쿼리 모두에 적용됩니다. CloudWatch 교차 계정 관찰성을 사용하는 경우 연결된 소스 계정에 대해 모니터링 계정에서 시작된 쿼리도 모니터링 계정의 동시성 한도에 포함됩니다.
-
빈번하지 않은 액세스 로그 그룹: 빈번하지 않은 액세스 로그 클래스의 로그 그룹의 경우 동시 Logs Insights 쿼리의 최대 수는 5개로 제한됩니다.