CloudWatch 콘솔의 Lambda 함수 로그에 대한 "error loading Log Streams" 오류를 해결하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2019년 7월 29일

Amazon CloudWatch 콘솔에서 AWS Lambda 함수에 대한 로그를 보려고 하면 "There was an error loading Log Streams. Please try again by refreshing this page."라는 오류 메시지가 표시됩니다. 이 문제를 해결하려면 어떻게 해야 합니까?

간략한 설명

이 오류는 AWS Management Console을 사용하여 CloudWatch에서 Lambda 로그 보기를 시도하지만 로그 그룹이 존재하지 않는 경우에 발생합니다. 로그는 함수를 최초로 실행한 후에만 생성됩니다. 로그 그룹이 없으면 일반적으로 함수의 AWS Identity and Access Management(IAM) 권한 문제로 인해 오류가 발생합니다.

참고: Lambda@Edge에 대한 권한 관련 로깅 문제는 Lambda@Edge의 서비스 연결 역할을 참조하십시오.

​해결 방법

Lambda 함수의 실행 역할이 CloudWatch에 로그를 쓸 수 있는 충분한 권한을 가지고 있고 IAM 정책의 로그 그룹 리소스에 함수 이름이 포함되어 있는지 확인하십시오.

IAM 콘솔에서 실행 역할에 대한 IAM 정책을 검토하고 편집하여 다음을 확인하십시오.

  • 쓰기 작업인 CreateLogGroup 및 CreateLogStream이 허용됩니다.
    참고: 함수에 대한 사용자 지정 권한이 필요하지 않을 경우 관리형 정책 AWSLambdaBasicExecutionRole을 연결할 수 있습니다. 이를 통해 Lambda가 CloudWatch에 로그를 작성할 수 있게 됩니다.
  • Amazon 리소스 이름(ARN)에 지정된 AWS 리전이 Lambda 함수의 리전과 동일합니다.
  • 로그 그룹 리소스에는 Lambda 함수 이름이 포함됩니다. 예를 들어, 함수 이름이 myLambdaFunction인 경우 로그 그룹/aws/lambda/myLambdaFunction입니다.

참고로 다음은 필요한 권한을 가진 JSON 정책 문서의 예입니다.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "logs:CreateLogGroup",
            "Resource": "arn:aws:logs:region:accountId:*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogStream",
                "logs:PutLogEvents"
            ],
            "Resource": [
                " arn:aws:logs:region:accountId:log-group:/aws/lambda/functionName:*"
            ]
        }
    ]
}

이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?