내용으로 건너뛰기

Amazon CloudWatch Synthetics 카나리의 문제를 진단하고 해결하려면 어떻게 해야 합니까?

4분 분량
0

Amazon CloudWatch Synthetics 카나리의 문제를 해결하고 싶습니다.

해결 방법

CloudWatch Synthetics 카나리의 문제를 해결하려면 다음 작업을 수행하십시오.

카나리와 카나리를 관리하는 IAM 사용자의 역할 및 권한 확인

AWS Identity and Access Management(IAM) 사용자 및 카나리 인스턴스에 필요한 역할과 권한이 있는지 확인하십시오. 자세한 내용은 CloudWatch 카나리를 관리하는 사용자에게 필요한 역할 및 권한카나리에 필요한 역할 및 권한을 참조하십시오.

IAM 사용자가 특정 카나리만 볼 수 있도록 하려면 IAM 사용자 또는 역할에 정책을 연결합니다.

Amazon S3 버킷 문제 해결

‘The specified bucket does not exist’ 오류 해결

CloudWatch Synthetics 카나리가 Amazon S3 버킷을 찾으려면 Amazon Simple Storage Service(Amazon S3) 버킷이 존재해야 합니다. S3 버킷이 더 이상 존재하지 않으면 오류가 발생합니다.

이 오류가 다시 발생하는 것을 방지하려면 버킷에 수명 주기를 생성하여 CloudWatch Synthetics 카나리 아티팩트를 저장합니다. 자세한 내용은 스토리지 수명 주기 관리를 참조하십시오.

‘Unable to upload artifacts to S3, Exception: Unable to fetch S3 bucket location: Access Denied" 오류 문제 해결

이 오류는 카나리의 IAM 역할에 액세스하는 데 필요한 권한이 없을 때 발생합니다. 이 오류는 암호화 설정에 잘못된 구성이 있거나 조직 정책이 액세스를 차단하는 경우에도 발생합니다.

카나리의 IAM 역할에 올바른 버킷 권한이 부여되었는지 확인하십시오. 또한 조직의 서비스 제어 정책이 사용자의 버킷 액세스를 차단하지 않는지 확인하십시오. 지침은 조직의 정책에 대한 정보 가져오기를 참조하십시오.

카나리가 암호화에 AWS Key Management Service(AWS KMS) 고객 관리형 키가 아닌 표준 AWS 관리형 키를 사용하는지 확인합니다. 카나리가 AWS KMS 고객 관리형 키를 사용하는 경우, 카나리의 IAM 역할에 암호화 또는 복호화 권한이 없을 수 있습니다. 자세한 내용은 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_artifact_encryption.html)카나리 아티팩트 암호화[를 참조하십시오.

카나리가 시각적 모니터링을 수행하는지 확인합니다. 자세한 내용은 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_artifact_encryption.html#CloudWatch_Synthetics_artifact_encryption_visual)시각적 모니터링 사용 시 아티팩트 위치 및 암호화 업데이트[를 참조하십시오.

버킷 정책에서 카나리가 사용하는 암호화 메커니즘을 허용하려면 카나리와 버킷 정책의 암호화 모드가 동일한지 확인하십시오. 동일하지 않은 경우 다른 암호화 옵션을 선택하십시오.

  1. Amazon CloudWatch 콘솔을 엽니다.
  2. 탐색 창에서 Synthetics Canaries(Synthetics canary)를 선택하고, 해당 카나리를 선택합니다.
  3. Actions(작업)를 선택한 다음, Edit(편집)을 선택합니다.
  4. Data storage(데이터 스토리지) 섹션에서 Additional configuration(추가 구성)을 선택합니다.
  5. 암호화에 사용할 키 유형을 선택하여 다른 암호화 옵션을 선택합니다.

‘1 validation error detected: Value 'XXXXX' at 'content.s3Bucket' failed to satisfy constraint: Member must satisfy regular expression pattern: ^[0-9A-Za-z\.\-_]*(?<!\.)$’ 오류 해결

이 오류를 해결하려면 버킷을 확인하고 카나리 스크립트가 버킷에 포함되어 있는지 확인하십시오.

스크립트가 버킷에 있는 경우 스크립트 코드에 버킷 이름을 지정하십시오. 버킷 이름의 시작 부분에 **s3://**을 포함하지 마십시오.

Lambda 문제 해결

‘The canary can't detect the latest Lambda layer’ 오류 문제 해결

카나리는 수동으로 변경하거나 Lambda 함수가 삭제된 경우 최신 AWS Lambda 계층을 감지할 수 있습니다. 이 문제를 해결하려면 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Create.html)새 카나리를 생성하십시오[.

‘The IAM role attached to the canary doesn't have a trust relationship for the Lambda service’ 오류 해결

카나리의 IAM 역할에는 Lambda 서비스에 대한 신뢰 관계가 있어야 합니다.

IAM 역할에 다음 문이 포함되어 있는지 확인합니다.

{  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

VPC에서 CloudWatch 카나리 실패 오류 해결

가상 프리이빗 클라우드(VPC)에서 CloudWatch 카나리가 오류를 수신하고 실패하는 경우, VPC에서 실패한 CloudWatch 카나리의 오류를 해결하려면 어떻게 해야 합니까?의 지침을 따르십시오.

CloudWatch Synthetics 카나리 문제에 대한 모범 사례

다음 조치를 취하십시오.

  • Availability(가용성) 탭을 확인하여 특정 실패 또는 통과된 실행에 대한 문제를 파악합니다.
  • Details(세부 정보) 페이지의 오류 메시지를 확인하여 카나리가 실패하는 이유를 확인합니다.
  • 스크린샷에서 최신 카나리 간접 호출을 확인합니다.
  • 로그 파일을 확인하여 권한 문제 또는 스로틀링 예외를 파악합니다.
  • Monitoring(모니터링) 탭에서 Canary 지표 및 Lambda 지표를 확인합니다.
  • 이름이 /aws/lambda/cwsyn-MyCanaryName-randomId인 CloudWatch Logs 로그 그룹에서 최근 카나리 작업 로그를 확인합니다.
  • 이름이 cw-syn-results-accountID-region인 Amazon S3 버킷에서 스크린샷 또는 HAR 파일 등의 아티팩트 업로드를 확인합니다.
  • 카나리에서 게시한 CloudWatch 지표를 확인합니다.

관련 정보

CloudWatch 카나리 실행이 중지된 이유는 무엇입니까?

CloudWatch Synthetics를 사용하여 웹사이트의 성능을 모니터링하려면 어떻게 해야 합니까?