CloudWatch에서 빈 로그 문제를 해결하려면 어떻게 해야 합니까?

2분 분량
0

Amazon CloudWatch에서 빈 로그 문제를 해결하고 싶습니다.

해결 방법

CloudWatch에서 빈 로그 문제를 해결하려면 다음 단계를 완료하십시오.

로그 그룹 지표 확인

데이터가 CloudWatch로 수집되면 CloudWatch Logs에서 로그 그룹 지표를 생성합니다. 로그 그룹 수준 지표 IncomingLogEventsIncomingBytes는 로그 그룹이 데이터를 수신할 때 데이터 포인트를 수신합니다. 지정된 기간 동안 데이터 포인트가 없으면 로그 그룹이 소스로부터 데이터를 수신하지 못한 것입니다.

소스가 데이터를 게시하는지 확인

통합 CloudWatch 에이전트를 사용하여 CloudWatch에 로그 데이터를 게시하는 경우 CloudWatch 에이전트가 오류 없이 실행되는지 확인합니다. 올바른 소스 로그 파일 경로가 에이전트 구성에 포함되어 있는지 확인합니다. 또한 소스 로그 파일에 CloudWatch로 푸시할 로그가 있는지 확인합니다. 자세한 내용은 통합 CloudWatch 에이전트가 로그 이벤트를 푸시하지 않는 문제를 해결하려면 어떻게 해야 합니까?를 참조하십시오.

소스에서 로그 엔드포인트로의 연결을 테스트하려면 다음 명령을 실행하십시오.

참고: example-region을 필요한 AWS 리전으로 바꿉니다.

telnet logs.<example-region>.amazonaws.com 443
nc -zv logs.<example-region>.amazonaws.com 443

이전 명령에서 연결 문제가 발생한 경우 다음을 확인하십시오.

  • 보안 그룹 및 네트워크 액세스 제어 목록(네트워크 ACL)에서 연결을 허용하는지 확인합니다.
  • 소스가 인터넷에 연결되어 있는지 확인합니다.
  • Amazon Virtual Private Cloud(Amazon VPC) 엔드포인트를 사용하는 경우 엔드포인트를 확인합니다. 엔드포인트가 Amazon VPC IP 주소로 확인되고 엔드포인트 보안 그룹이 소스 IP 주소에서의 액세스를 허용하는지 확인합니다.
  • PutLogEvents 제약 조건이 충족되는지 확인합니다.

권한 검토

소스에 필요한 로그 그룹에 데이터를 게시할 수 있는 권한이 있는지 확인합니다. 다음은 소스 AWS Identity and Access Management(IAM) 정책과 함께 사용할 수 있는 샘플 정책입니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Statement1",
      "Effect": "Allow",
      "Action": [
        "logs:PutLogEvents"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

데이터가 CloudWatch에 푸시될 때 로그 소스가 새로운 로그 그룹과 로그 스트림을 생성하는 경우, 정책의 Action 파라미터를 확인합니다. logs:CreateLogGrouplogs:CreateLogStream 권한이 포함되어 있는지 확인합니다.

로그를 읽을 때 AccessDenied 오류를 방지하려면 필요한 IAM 사용자 또는 역할에 logs:GetLogEvents에 대한 최소 권한이 있는지 확인합니다. AWS Management Console을 사용하여 로그를 보는 경우 logs:DescribeLogGroups, logs:DescribeLogStreams, logs:GetLogEvents 권한이 있는지 확인합니다.

로그 그룹 구성 확인

로그 그룹의 경우 보존 기간이 적절하게 설정되어 있고 보존 기간 내에 있는 로그를 검색하는지 확인하십시오. 보존 기간이 만료된 후 삭제된 로그는 영구적으로 삭제되며 복구할 수 없습니다.

AWS 공식
AWS 공식업데이트됨 10달 전