기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
CloudWatch Logs Insights를 사용하여 애플리케이션 활동 모니터링
작성자: Ram Kandaswamy(AWS)
요약
이 패턴은 Amazon CloudWatch Logs Insights를 사용하여 애플리케이션 예외를 자동으로 감지하고 경고하는 솔루션을 제공합니다. 자동 로그 분석 및 알림을 구현하면 프로덕션 환경에서 애플리케이션 문제를 신속하게 식별하고 대응할 수 있습니다.
로그는 시스템 동작을 모니터링하고, 문제를 식별하고, 최적의 성능을 보장하는 데 중요한 역할을 합니다. 마이그레이션 프로세스 중에 로그 파일은 새 환경에서 시스템의 기능을 검증하고, 호환성 문제를 감지하고, 예상치 못한 동작을 식별하는 데 매우 중요합니다. 문제는 운영 또는 보안과 관련이 있을 수 있습니다. 보안 관련 문제의 경우 보안 및 규정 준수를 유지하려면 무단 액세스 시도 또는 의심스러운 활동을 조기에 감지할 수 있어야 합니다. 이 기능은 민감한 데이터 또는 중요한 시스템을 처리할 때 특히 중요합니다.
이 패턴은 높은 애플리케이션 가용성을 유지하고 프로덕션 문제에 신속하게 대응해야 하는 팀에 특히 유용합니다. 이는 다양한 산업 및 사용 사례와 관련이 있습니다. 예를 들어 통신에서는 네트워크 구성 오류 또는 중단을 빠르게 식별하고 차선의 라우팅 경로를 감지하여 잠재적 혼잡을 정확히 찾아낼 수 있습니다. 사물 인터넷(IoT) 도메인에서 Greengrass 구성 요소는 CloudWatch에 로그를 게시하여이 기술을 통해 관련 로그 세부 정보를 추출하고 포괄적인 대시보드에 표시할 수 있습니다.
사전 조건 및 제한 사항
사전 조건
활성에 배포된 프로덕션 애플리케이션 AWS 계정
프로덕션 애플리케이션의 로깅 형식 및 예외 패턴에 대한 기본 이해
Amazon CloudWatch Logs로 스트리밍하도록 구성된 애플리케이션 로그
제한 사항
일부 AWS 서비스 는 전혀 사용할 수 없습니다 AWS 리전. 리전 가용성은 AWS 리전별 서비스를
참조하세요. 특정 엔드포인트는 서비스 엔드포인트 및 할당량을 참조하고 서비스 링크를 선택합니다.
아키텍처
다음 다이어그램은 CloudWatch Logs Insights가 리소스 로그를 평가하고 관련 데이터 시각화를 CloudWatch 대시보드로 전송하는 방법을 보여줍니다.

이 다이어그램은 다음 워크플로를 보여줍니다.
리소스는 CloudWatch Logs에 로그를 게시합니다. 리소스에는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 또는 Amazon Simple Storage Service(Amazon S3) 버킷과 같은 AWS 리소스가 포함될 수 있습니다. 또 다른 예로는 CloudWatch에 로그를 게시할 수 있는 CloudWatch Agent가 설치된 온프레미스 시스템이 있습니다.
CloudWatch Logs Insights는 관련 패턴 문자열을 필터링합니다. 검색 패턴 문자열의 예로는 “오류”, “예외” 또는 특정 정규식이 있습니다.
일반적으로 프로덕션 지원 팀 또는 개발자는 CloudWatch 대시보드에 패턴 시각화를 추가합니다.
자동화 및 규모 조정
개발자는 AWS Cloud Development Kit (AWS CDK) AWS CloudFormation또는 AWS SDKs할 수 있습니다. 팀은이 자동화를 지속적 통합 및 배포(CI/CD) DevOps 프로세스에 통합할 수 있습니다.
도구
AWS 서비스
Amazon CloudWatch Logs를 사용하면 모든 시스템, 애플리케이션 및의 로그를 중앙 집중화 AWS 서비스 하여 모니터링하고 안전하게 보관할 수 있습니다.
AWS Identity and Access Management (IAM)는 AWS 리소스에 대한 액세스를 인증하고 사용할 수 있는 권한을 부여받은 사용자를 제어하여 리소스에 대한 액세스를 안전하게 관리하는 데 도움이 됩니다.
AWS Key Management Service (AWS KMS)를 사용하면 암호화 키를 생성하고 제어하여 데이터를 보호할 수 있습니다.
모범 사례
관련 로그 데이터를 분석하도록 로그 그룹을 정의하고 구성합니다.
필드 탐색기를 사용하여 로그 데이터에서 사용할 수 있는 구조와 필드를 이해합니다.
더 빠른 분석을 위해 특정 요구 사항에 맞게 샘플 쿼리를 조정합니다.
쿼리를 모니터링하여 잠재적 성능 문제 또는 병목 현상을 식별합니다.
과도한 비용이나 리소스 소비를 방지하려면 쿼리 제한을 설정합니다.
나중에 사용할 수 있도록 쿼리를 저장하여 시간을 절약하고 일관된 분석을 보장합니다.
적절한 IAM 정책을 적용하여 CloudWatch Logs Insights 및 로그 그룹에 대한 액세스를 제어합니다. CloudWatch 최소 권한 원칙을 따르고 작업을 수행하는 데 필요한 최소 권한을 부여합니다. 자세한 내용은 IAM 설명서의 최소 권한 부여 및 보안 모범 사례를 참조하세요.
민감한 로그 데이터에 대해를 사용하여 로그 데이터 암호화 AWS KMS를 활성화합니다.
에픽
작업 | 설명 | 필요한 기술 |
---|---|---|
IAM 권한을 구성합니다. | IAM 권한을 구성하려면 다음을 수행합니다.
IAM 정책을 생성하거나 기존 정책에 권한을 추가하는 방법에 대한 자세한 내용은 IAM 사용 설명서의 고객 관리형 정책을 사용하여 사용자 지정 IAM 권한 정의 및 IAM 정책 편집을 참조하세요. 자세한 내용은 Amazon CloudWatch Logs 사용 설명서의 Amazon CloudWatch Logs 및 CloudWatch Logs 권한 참조에 대한 자격 증명 및 액세스 관리를 참조하세요 Amazon CloudWatch. CloudWatch | AWS 관리자, AWS DevOps, 시스템 관리자, Cloud 관리자, Cloud 아키텍트, DevOps 엔지니어 |
로그 그룹 생성 | 로그 그룹을 생성하려면 다음 옵션 중 하나를 사용합니다.
| AWS 관리자, AWS DevOps, 시스템 관리자, Cloud 관리자, Cloud 아키텍트, DevOps 엔지니어 |
CloudWatch Logs Insights 쿼리를 생성합니다. | CloudWatch Logs Insights 쿼리를 생성하고 저장하려면:
| AWS 관리자, AWS DevOps, 시스템 관리자, Cloud 관리자, Cloud 아키텍트, DevOps 엔지니어 |
CloudWatch 대시보드에서 시각화를 생성합니다. | CloudWatch 대시보드를 사용하여 시각화를 생성하려면 다음을 수행합니다.
대시보드 옵션 및 기능에 대한 자세한 내용은 Amazon CloudWatch Logs 사용 설명서의 Amazon CloudWatch 대시보드 사용 및 대시보드 변수를 사용하여 유연한 CloudWatch 대시보드 생성을 CloudWatch 참조하세요 Amazon CloudWatch. | AWS 관리자, AWS DevOps, 시스템 관리자, Cloud 관리자, Cloud 아키텍트, DevOps 엔지니어 |
문제 해결
문제 | Solution |
---|---|
쿼리 결과를 볼 수 없거나 쿼리가 손상된 것 같습니다. | 샘플 쿼리에서 수정된 작업 쿼리로 시작합니다. 쿼리의 일부(예: 필터 또는 필드)에 대해 약간의 증분 변경을 수행하고 CloudWatch Logs 쿼리 생성기 기능을 활용합니다. |
로그 그룹이 로그 스트림을 생성하지 않음 | IAM 정책에서 CreateLogStream 및 CreateLogGroup 작업에 대한 리소스에 와일드카드 문자 |