Amazon CloudWatch FAQ

일반

Amazon CloudWatch는 클라우드 리소스와 AWS에서 실행되는 애플리케이션을 위한 AWS 모니터링 서비스입니다. Amazon CloudWatch를 사용하여 지표를 수집 및 추적하고 로그 파일을 수집 및 모니터링하고 경보를 설정할 수 있습니다. Amazon CloudWatch는 Amazon EC2 인스턴스, Amazon DynamoDB 테이블, Amazon RDS DB 인스턴스 같은 AWS 리소스뿐만 아니라 애플리케이션과 서비스에서 생성된 사용자 정의 지표 및 애플리케이션에서 생성되고 온프레미스, 하이브리드 또는 기타 클라우드에서 호스팅된 모든 로그 파일을 모니터링할 수 있습니다. Amazon CloudWatch를 사용하여 시스템 전반의 리소스 사용률, 애플리케이션 성능, 운영 상태를 파악할 수 있습니다. 이러한 통찰력을 사용하여 문제에 적절히 대응하고 애플리케이션 실행을 원활하게 유지할 수 있습니다.

모니터링을 시작하려면, 내장된 AWS 모범 사례와 함께 자동 대시보드를 사용하여 지표 및 경보에 대한 계정 및 리소스 기반의 보기를 탐색하고, 쉽게 세부 정보를 드릴다운하여 성능 문제의 원인을 파악할 수 있습니다.

Amazon CloudWatch에는 API, 명령줄 인터페이스, AWS SDK 및 AWS Management Console을 통해 액세스할 수 있습니다.

Amazon CloudWatch는 모든 Amazon EC2 인스턴스의 메트릭을 수신하고 제공하며 현재 Amazon EC2 서비스에서 지원하는 운영 체제를 사용해야 합니다.

Amazon CloudWatch는 AWS 계정을 가진 사용자가 수행할 수 있는 CloudWatch 작업을 지정할 수 있도록 AWS Identity and Access Management(IAM)와 통합되어 있습니다. 예를 들어 조직의 특정 사용자에게만 GetMetricStatistics를 사용할 수 있는 권한을 부여하는 IAM 정책을 만들 수 있습니다. 그런 다음 이 작업을 사용하여 클라우드 리소스에 대한 데이터를 검색할 수 있습니다.

특정 리소스의 CloudWatch 데이터에 대한 액세스를 제어할 때는 IAM을 사용할 수 없습니다. 예를 들어, 특정 인스턴스 세트 또는 특정 LoadBalancer에 대한 CloudWatch 데이터에 대해서만 사용자 액세스 권한을 부여할 수는 없습니다. IAM을 통해 부여된 권한은 CloudWatch에서 사용하는 클라우드 리소스 전체에 적용됩니다. 또한, IAM 역할은 Amazon CloudWatch 명령줄 도구와 함께 사용할 수 없습니다.

Amazon CloudWatch 로그를 사용하면 기존 시스템, 애플리케이션 및 사용자 정의 로그 파일을 이용하여 시스템 및 애플리케이션을 모니터링하고 문제를 해결할 수 있습니다.

CloudWatch 로그를 통해 특정 구문, 값 또는 패턴에 대한 로그를 거의 실시간으로 모니터링할 수 있습니다. 예를 들어 시스템 로그에 발생하는 오류 수에 대한 경보를 설정하거나 애플리케이션 로그에 기록된 웹 요청 지연 시간에 대한 그래프를 볼 수 있습니다. 그런 다음 원본 로그 데이터를 확인하여 문제의 원인을 파악할 수 있습니다. 로그 데이터는 안정성이 높고 저렴한 스토리지에 무기한으로 저장 및 액세스할 수 있으므로 하드 드라이브의 용량을 걱정하지 않아도 됩니다.

CloudWatch 로그를 사용하면 로그를 모니터링하고 저장할 수 있어 시스템 및 애플리케이션을 이해하고 운영하는 데 도움이 됩니다. CloudWatch Logs는 다양한 방법으로 사용할 수 있습니다.

실시간 애플리케이션 및 시스템 모니터링: CloudWatch Logs를 사용하면 로그 데이터를 이용해 애플리케이션과 시스템을 모니터링할 수 있습니다. 예를 들어 CloudWatch Logs에서는 애플리케이션 로그에서 발생하는 오류의 수를 추적하고 오류 비율이 지정한 임계값을 초과할 때마다 알림을 전송할 수 있습니다. CloudWatch Logs는 모니터링하는 데 로그 데이터를 사용하므로 코드를 변경할 필요가 없습니다.

로그 장기 보존: CloudWatch Logs를 사용하면 하드 드라이브 용량을 걱정할 필요 없이 내구성이 우수하고 비용 효율적인 스토리지에 무기한으로 로그 데이터를 저장할 수 있습니다. CloudWatch Logs 에이전트를 사용하면 순환 로그 파일과 비순환 로그 파일을 모두 호스트에서 로그 서비스로 쉽고 빠르게 이동할 수 있습니다. 그런 다음 필요한 경우 원시 로그 이벤트 데이터에 액세스할 수 있습니다.

CloudWatch 로그 에이전트는 Amazon Linux, Ubuntu, CentOS, Red Hat Enterprise Linux 및 Windows를 지원합니다. 이 에이전트는 호스트의 개별 로그 파일을 모니터링하는 기능을 지원합니다.

예. CloudWatch 로그 에이전트는 Identity and Access Management(IAM)와 통합되어 있으며 액세스 키와 IAM 역할을 모두 지원합니다.

Amazon CloudWatch Logs Insights는 CloudWatch Logs를 위한 통합된 인터랙티브 로그 분석 기능으로, 사용량에 따라 비용을 지불하는 서비스입니다. 이를 통해 개발자, 운영자, 시스템 엔지니어는 로그를 검색하고 시각화하여 애플리케이션을 이해하고 개선하며 디버그할 수 있습니다. Logs Insights는 CloudWatch에 완벽하게 통합되어 로그를 관리하고 탐색하고 분석하도록 지원합니다. 또한 Logs와 함께 CloudWatch Metrics, Alarms 및 대시보드를 활용하여 애플리케이션에 대한 완벽한 시각적 운영 정보를 확인할 수 있습니다. 그러면 애플리케이션을 이해하고 개선하고 문제를 신속하게 찾아 해결할 수 있으므로 지속적으로 빠르게 혁신해나갈 수 있습니다. 집계, 필터 및 정규 표현식으로 쿼리를 작성하여 로그로부터 조치 가능한 통찰을 도출할 수 있습니다. 또한, 시계열 데이터를 시각화하고, 개별 로그 이벤트로 드릴 다운하고, 쿼리 결과를 CloudWatch 대시보드로 내보낼 수 있습니다.

Logs Insights 사용을 바로 시작하여 CloudWatch Logs로 전송되는 모든 로그에 대한 쿼리를 실행할 수 있습니다. 설정하거나 인프라를 관리할 필요가 없습니다. AWS Management Console에서 Logs Insights에 액세스하거나 AWS SDK를 사용하여 애플리케이션을 통해 프로그래밍 방식으로 액세스할 수 있습니다.

Amazon CloudWatch 이상 탐지는 기계 학습 알고리즘을 적용하여 시스템 및 애플리케이션의 단일 시계열을 지속적으로 분석하고, 정상적인 기준을 파악하고, 최소한의 사용자 개입으로 이상 항목을 드러냅니다. 이 기능을 사용하면 하루 중 시간, 요일 기반의 계절성 또는 변화하는 추세와 같은 자연적인 지표 패턴을 기반으로 임계값을 자동 조정하는 경보를 생성할 수 있습니다. 또한 대시보드에서 이상 탐지 반대를 사용하여 지표를 시각화함으로써, 예기치 않은 지표 변화를 모니터링, 격리 및 문제 해결할 수 있습니다.

이상 탐지를 시작하는 방법은 쉽습니다. CloudWatch 콘솔의 탐색 창에서 경보로 이동하여 경보를 생성하거나 지표에서 시작하여 지표의 예상 값을 구간으로 그래프에 오버레이할 수 있습니다. AWS CLI, AWS SDK 또는 AWS CloudFormation 템플릿을 사용하여 이상 탐지를 활성화할 수도 있습니다. 자세히 알아보려면 CloudWatch 이상 탐지 설명서 및 요금 페이지를 참조하세요.

시계열 데이터를 분석하여 시스템 성능에 가장 큰 영향을 미치는 요소를 보여주는 Contributor Insights가 Amazon CloudWatch에 포함되어 있습니다. Contributor Insights는 설정하고 나면 추가적인 사용자 개입 없이 연속으로 실행됩니다. 이렇게 하면 운영 이벤트 발생 시, 개발자와 운영자가 신속하게 문제를 분리하여 진단하고 복구하는 데 도움이 됩니다.

CloudWatch 콘솔의 탐색 창에서 Contributor Insights로 이동하여 Contributor Insights 규칙을 생성하면 됩니다. AWS CLI, AWS SDK 또는 AWS CloudFormation 템플릿을 사용하여 Contributor Insights를 활성화할 수도 있습니다. Contributor Insights는 모든 상업적인 AWS 리전에 제공됩니다. 자세한 정보는 CloudWatch Contributor Insights 설명서를 참조하십시오.

Amazon CloudWatch ServiceLens는 애플리케이션의 상태, 성능 및 가용성을 한 곳에서 시각화하고 분석할 수 있는 기능입니다. CloudWatch ServiceLens는 CloudWatch 지표 및 로그는 물론이고 AWS X-Ray의 트레이스와도 결합되어 포괄적인 애플리케이션 및 애플리케이션 종속성 정보를 제공합니다. 이를 통해 성능 병목 현상을 신속하게 포착하고, 애플리케이션 문제의 근본 원인을 확인하고, 영향을 받는 사용자를 파악할 수 있습니다. CloudWatch ServiceLens를 사용하면 인프라 모니터링(지표 및 로그를 사용하여 애플리케이션을 지원하는 리소스 파악)과 트랜잭션 모니터링(트레이스를 사용하여 리소스 간 종속성 파악), 최종 사용자 모니터링(카나리아를 사용하여 엔드포인트를 모니터링하고 최종 사용자 환경이 저하되었을 때 알림)이라는 세 가지 주요 영역에서 애플리케이션을 심층 분석할 수 있습니다.

이미 AWS X-Ray를 사용 중이라면 기본적으로 CloudWatch 콘솔에서 CloudWatch ServiceLens에 액세스할 수 있습니다. 아직 AWS X-Ray를 사용하지 않고 있다면 X-Ray SDK를 사용하여 애플리케이션에 AWS X-Ray를 활성화한 후 시작할 수 있습니다. Amazon CloudWatch ServiceLens는 AWS-X-Ray를 사용할 수 있는 모든 퍼블릭 AWS 리전에서 사용 가능합니다. 자세한 내용은 Amazon CloudWatch ServiceLens 설명서를 참조하십시오.

Amazon CloudWatch Synthetics를 사용하면 애플리케이션 엔드포인트를 보다 쉽게 모니터링할 수 있습니다. 쉬지 않고 1분마다 엔드포인트에서 검사를 실행해 애플리케이션 엔드포인트가 예상과 다른 동작을 하는 즉시 알림을 보냅니다. 이 테스트는 맞춤 설정을 통해 가용성, 지연, 트랜잭션, 손상되거나 연결이 끊어진 링크, 단계별 작업 완료 상태, 페이지 부하 오류, UI 자신의 부하 지연, 복잡한 마법사 플로 또는 애플리케이션의 체크아웃 플로를 검사하도록 설정할 수 있습니다. 또한, CloudWatch Synthetics를 사용하여 문제가 있는 애플리케이션 엔드포인트를 분리하고 기본 인프라 문제로 다시 매핑해 문제 해결에 걸리는 시간을 단축할 수 있습니다.

CloudWatch Synthetics는 쉽게 시작할 수 있습니다. 첫 번째 통과 Canary를 몇 분 안에 작성할 수 있습니다. 자세한 알아보려면 Amazon CloudWatch Synthetics에 대한 설명서를 참조하세요.

요금

최신 정보는 요금 페이지를 참조하세요.

모든 Amazon EC2 인스턴스 유형은 별도의 비용 없이 키 상태 및 성능 지표를 CloudWatch에 자동으로 전송합니다. EC2 세부 모니터링을 활성화한 경우, 해당 인스턴스에 대해 CloudWatch로 전송된 지표의 수를 기준으로 사용자 지정 지표에 대한 요금이 청구됩니다. 인스턴스에 대해 전송된 지표의 수는 인스턴스 유형에 따라 다릅니다. 자세한 내용은 인스턴스에 대해 사용 가능한 CloudWatch 지표를 참조하세요.

달리 명시하지 않는 한 가격에는 VAT 및 해당 판매세를 포함한 관련 조세 공과가 포함되지 않습니다. 자세히 알아보십시오.

2017년 7월 이전에는 AWS 청구서와 비용 및 사용 보고서에서 CloudWatch 요금이 2개의 서로 다른 섹션으로 나뉘어 표시되었습니다. 기록상의 이유로 CloudWatch 경보, CloudWatch 지표 및 CloudWatch API 사용 요금은 청구서의 'Elastic Compute Cloud'(EC2) 세부 정보 섹션 아래에 제시되어 있으며 CloudWatch Logs 및 CloudWatch 대시보드 요금은 'CloudWatch' 세부 정보 섹션에 표시되었습니다. 월별 AWS CloudWatch 사용 및 결제를 통합하고 간소화하기 위해 CloudWatch 지표, 경보 및 API 사용 요금을 청구서의 'EC2' 섹션에서 'CloudWatch' 섹션으로 옮겨 모든 CloudWatch 모니터링 요금을 'CloudWatch' 섹션에서 볼 수 있도록 했습니다. 총 AWS 결제 금액에는 변동이 없습니다. 이제 청구서와 비용 및 사용 보고서에서는 CloudWatch 요금이 단일 섹션에 표시됩니다.

또한, CloudWatch에는 총 예상 요금을 보거나 서비스별 예상 요금을 볼 수 있는 'Estimated Charges'라는 결제 지표가 있습니다. '총 예상 요금' 지표에는 변경 사항이 없습니다. 하지만 서비스별로 나뉜 'EstimatedCharges' 지표는 'AmazonEC2'와 같은 차원 서비스 이름 및 'AmazonCloudWatch'와 같은 차원 서비스 이름으로 변경됩니다. 결제 통합으로 인해 EC2에서 사용 및 결제 요금이 CloudWatch로 이동하면서 AmazonEC2 결제 지표가 감소하고 AmazonCloudWatch 결제 지표는 증가하는 것을 볼 수도 있습니다.

Logs Insights는 쿼리당 요금이 부과되며 쿼리로 스캔한 수집된 로그 데이터의 양을 기준으로 요금이 청구됩니다. 요금에 대한 자세한 내용은 CloudWatch 요금을 참조하세요.

예. 쿼리를 수동으로 취소하면 이 쿼리를 취소한 시점까지 스캔한 수집된 로그 데이터의 양에 대한 요금이 부과됩니다.

아니요. 실패한 쿼리에 대해서는 요금이 청구되지 않습니다.

크로스 계정 관측성

CloudWatch의 크로스 계정 관측성을 사용하면 단일 리전 내 여러 계정에 걸쳐 있는 애플리케이션을 모니터링하고 문제를 해결할 수 있습니다. 크로스 계정 관측성을 사용하면 계정 경계에 대해 걱정할 필요 없이 지표, 로그 및 트레이스를 원활하게 검색하고 시각화하고 분석할 수 있습니다. 애플리케이션의 집계된 크로스 계정 보기에서 오류가 있는 리소스를 시각적으로 식별하고 관련된 트레이스, 지표 및 로그를 확인하여 문제의 근본 원인을 찾을 수 있습니다. 크로스 계정 모니터링은 원활한 크로스 계정 데이터 액세스 및 탐색을 지원하므로 문제 해결에 필요한 수동 작업과 해결 시간을 줄이는 데 도움이 됩니다. 크로스 계정 관측성은 CloudWatch의 통합 관측성 기능과 함께 추가로 제공되는 기능입니다.

크로스 계정 관측성은 2가지 새로운 계정 개념을 도입합니다. ‘모니터링 계정’은 중앙의 AWS 계정으로, 다른 계정에서 생성된 관측성 데이터를 보고 이 데이터와 상호 작용할 수 있습니다. ‘소스 계정’은 계정에 있는 리소스에 대한 관측성 데이터를 생성하는 개별 AWS 계정입니다. 모니터링 계정과 소스 계정을 식별한 후에는 모니터링 계정과 공유할 텔레메트리 데이터를 선택하여 크로스 계정 모니터링 구성을 완료합니다. 몇 분 안에 중앙 모니터링 계정을 손쉽게 설정하고 이 계정으로 다수의 관련 계정 또는 전체 AWS 조직에 배포된 애플리케이션의 상태 및 성능을 완벽하게 파악할 수 있습니다. CloudWatch의 크로스 계정 관측성을 사용하면 서비스 가용성에 영향을 미칠 수 있는 크로스 애플리케이션 종속성을 한 눈에 보고 문제를 사전에 포착하며 문제 해결에 들어가는 평균 해결 시간을 줄일 수 있습니다.

크로스 계정 관측성을 사용하면 중앙 보기에서 여러 계정에 저장된 로그 그룹을 검색하고 크로스 계정 Logs Insights 쿼리, Live Tail을 실행할 수 있으며 여러 계정에서 Contributor Insights 규칙을 생성하여 로그 항목을 생성하는 상위 N명의 기여자를 파악할 수 있습니다. 지표 검색을 사용하여 여러 계정의 지표를 통합 보기에서 시각화하고, 다른 계정의 지표를 평가하는 경보를 생성하여 이상 항목과 최신 문제 관련 알림을 받고, 중앙 집중식 대시보드에서 이를 시각화할 수 있습니다. 이 기능을 사용하면 단일의 교차 계정 지표 스트림을 설정하고 AWS 리전의 여러 계정에 걸친 지표를 이 스트림에 포함할 수도 있습니다. 교차 계정 관측성을 사용하면 ServiceLens를 사용하여 교차 계정 애플리케이션의 대화형 맵을 확인할 수 있으며, 한 단계로 간편하게 관련 지표, 로그, 트레이스로 드릴다운할 수도 있습니다.

CloudWatch의 크로스 계정 모니터링과 크로스 계정 크로스 리전 기능 모두 CloudWatch 콘솔에서 사용할 수 있습니다. CloudWatch에서 크로스 계정 관측성을 설정하면 크로스 계정 크로스 리전 드롭다운 메뉴가 콘솔에서 제거됩니다. 참고로 CloudWatch의 크로스 계정 관측성 경험은 한 번에 한 리전에서 사용할 수 있습니다. 크로스 계정 크로스 리전 기능을 사용하면 IAM 역할을 통해 조직 전체 텔레메트리에 액세스할 수 있습니다. CloudWatch의 크로스 계정 관측성은 Observability Access Manager API를 사용하여 액세스 정책을 정의합니다. 설명서에서 자세히 알아보세요.

AWS 리소스 및 사용자 정의 지표 모니터링

Amazon CloudWatch를 사용하면 AWS 클라우드 리소스 및 AWS에서 실행하는 애플리케이션을 모니터링할 수 있습니다. Amazon EC2 인스턴스, EBS 볼륨, Elastic Load Balancer, Auto Scaling 그룹, EMR 작업 흐름, RDS DB 인스턴스, DynamoDB 테이블, ElastiCache 클러스터, RedShift 클러스터, OpsWorks 스택, Route 53 상태 확인, SNS 주제, SQS 대기열, SWF 워크플로, Storage Gateway를 비롯한 다양한 AWS 제품 및 서비스에 대한 지표가 자동으로 제공됩니다. 또한, 자체 애플리케이션 및 서비스에서 생성된 사용자 정의 지표도 모니터링할 수 있습니다.

최하 1초 단위로 사용자 정의 지표를 게시하고 저장할 수 있습니다. 지표 보존 기간 연장 기능은 2016년 11월 1일에 출시되었으며 이전에 14일이었던 고객의 모든 지표 저장 기간을 15개월까지 연장할 수 있게 되었습니다. CloudWatch는 다음과 같이 지표 데이터를 보존합니다.

간격이 60초 미만인 데이터 포인트는 3시간 동안 유지됩니다. 이러한 데이터 포인트는 고분석 사용자 지정 지표입니다.

간격이 60초(1분)인 데이터 포인트는 15일 동안 유지됩니다.

간격이 300초(5분)인 데이터 포인트는 63일 동안 유지됩니다. 

간격이 3,600초(1시간)인 데이터 포인트는 455일(15개월) 동안 유지됩니다.

처음에 더 짧은 기간으로 게시되었던 데이터 포인트는 장기 보관을 위해 함께 집계됩니다. 예를 들어 1분 간격으로 데이터를 수집한 경우, 1분 단위로 15일 동안 유지됩니다. 15일이 지난 후에도 이 데이터는 계속 유지되지만, 5분 단위로만 검색할 수 있습니다. 63일이 지난 후에는 이 데이터가 다시 집계되어 1시간 단위로 제공됩니다. 이 기간보다 더 오랫동안 지표를 유지해야 하는 경우 GetMetricStatistics API를 사용하여 데이터 포인트를 오프라인 또는 다른 스토리지에서 검색할 수 있습니다.

이 기능은 현재 미국 동부(버지니아 북부), 미국 서부(오레곤), 미국 서부(캘리포니아 북부), EU(아일랜드), EU(프랑크푸르트), 남아메리카(상파울루), 아시아 태평양(싱가포르), 아시아 태평양(도쿄), 아시아 태평양(서울), 아시아 태평양(뭄바이), 아시아 태평양(시드니), EU(런던), 캐나다(중부), 미국 동부(오하이오) 및 중국(베이징)에서 사용할 수 있습니다.

CloudWatch가 지원하는 최소 단위는 고단위 지표인 1초 데이터 포인트이며, 1분 간격으로 지표를 저장할 수도 있습니다. Cloudwatch는 3분 또는 5분 간격과 같이 서로 다른 간격으로 지표를 수신할 때도 있습니다. PutMetricData API 요청에서 StorageResolution 필드를 설정하여 지표를 고단위로 지정하지 않으며, 기본적으로 CloudWatch는 1분 단위로 지표를 집계하고 저장합니다.

요청한 데이터가 생성된 지 얼마나 되었는지에 따라 위의 보존 일정에 정의된 단위로 지표가 제공됩니다. 예를 들어 10일 전 하루에 대한 1분 단위 데이터를 요청한 경우 1,440개의 데이터 포인트를 받게 됩니다. 하지만 5개월 전의 1분 단위 데이터를 요청하는 경우 UI는 해당 단위를 자동으로 1시간으로 변경하고 GetMetricStatistics API는 어떤 출력도 반환하지 않습니다.

CloudWatch에서는 지표 삭제를 지원하지 않습니다. 지표는 위에 명시된 보존 일정에 따라 삭제됩니다.

예. Amazon CloudWatch는 여러 소스에서 데이터를 쿼리하는 것을 지원하므로 AWS, 온프레미스, 다른 클라우드에서 지표를 모니터링할 수 있습니다. 이제 몇 시간이 아닌 몇 분 안에 중요한 이벤트를 해결하고 애플리케이션 상태에 대한 가시성을 확보하고 원활한 운영을 위한 인사이트를 더 빠르게 얻을 수 있습니다. 모든 모니터링 도구의 쿼리, 시각화 및 경보를 한 곳에서 중앙 집중화할 수 있습니다.

아니요. 위에 명시된 보존 일정에 따라 언제든 Amazon EC2 인스턴스에 대한 지표를 검색할 수 있습니다. 하지만 CloudWatch 콘솔은 네임스페이스에 가장 최신 인스턴스가 표시되도록 하기 위해 지표가 마지막으로 수집된 후 2주까지로 지표 검색을 제한하고 있습니다.

시작하려면 Amazon CloudWatch 콘솔에서 지표 쿼리 작성기로 이동하여 데이터 소스 선택기를 엽니다. 선택기를 사용하여 마법사를 시작하고 쿼리 및 경보에 사용할 새 데이터 소스를 추가할 수 있습니다. 쿼리하려는 데이터 소스를 선택하고 URL, 경로, 보안 인증 정보와 같은 액세스 세부 정보를 지정합니다. 자세한 내용은 설명서를 참조하세요.

예. Amazon CloudWatch는 종료된 Amazon EC2 인스턴스 또는 삭제된 Elastic Load Balancer의 지표를 15개월 동안 저장합니다.

동일한 시간 창을 5분 단위로 볼 때와 1분 단위로 볼 때를 비교할 경우 해당 데이터 포인트가 그래프의 각기 다른 위치에 표시될 수 있습니다. 그래프에 지정한 기간 동안 Amazon CloudWatch가 모든 가용 데이터 요소를 찾은 다음 단일 집계 요소를 계산해 전체 기간을 표시합니다. 5분 단위의 경우 단일 데이터 요소가 5분 시간 창의 맨 앞에 배치됩니다. 1분 단위의 경우 단일 데이터 요소가 1분 표시에 배치됩니다. 문제 해결 및 더 정밀한 기간 그래프가 필요한 기타 작업의 경우 1분 단위를 사용하는 것이 좋습니다.

Amazon CloudWatch를 사용하면 자체 애플리케이션, 스크립트 및 서비스에서 생성된 데이터를 모니터링할 수 있습니다. 사용자 정의 지표란 사용자가 Amazon CloudWatch에 제공하는 모든 지표를 말합니다. 예를 들어 웹 페이지 로드 시간, 요청 오류 비율, 인스턴스의 프로세스나 스레드 수 또는 애플리케이션에서 수행한 작업량을 모니터링하는 방법으로 사용자 정의 지표를 사용할 수 있습니다. PutMetricData API, Windows 및 Linux용 샘플 모니터링 스크립트, CloudWatch 수집 플러그인뿐만 아니라 AWS 파트너가 제공하는 여러 애플리케이션 및 도구를 사용하여 사용자 정의 지표를 시작할 수 있습니다.

사용자 지정 지표는 다음 중 하나가 될 수 있습니다.

1분 간격으로 데이터를 저장하는 표준 단위

1초 간격으로 데이터를 저장하는 고단위입니다.

CloudWatch에서는 기본적으로 1분 단위로 지표를 저장합니다. 지표를 고단위로 정의하려면 PutMetricData API 요청에서 StorageResolution 파라미터를 1로 설정하면 됩니다. 선택 사항인 StorageResolution 파라미터를 설정하지 않는 경우에는 CloudWatch가 지표를 1분 단위로 저장하게 됩니다.

고단위 지표를 게시하는 경우 CloudWatch가 이를 1초 단위로 저장하며, 사용자는 1초, 5초, 10초, 30초 또는 60초의 배수로 읽고 검색할 수 있습니다.

사용자 정의 지표는 위에 명시된 것과 같은 보존 일정을 따릅니다.

현재 CloudWatch에 게시하는 사용자 지정 지표만 고단위로 제공됩니다. 고단위 사용자 정의 지표는 1초 단위로 CloudWatch에 저장됩니다. 고단위는 PutMetricData API에 있는 StorageResolution 파라미터 값을 1로 설정하여 정의하며 이 파라미터는 필수 필드가 아닙니다. 선택 사항인 StorageResolution 필드 값을 지정하지 않는 경우 CloudWatch는 기본적으로 1분 단위로 사용자 정의 지표를 저장합니다.

아니요. 고단위 사용자 정의 지표는 표준 1분 단위 사용자 정의 지표와 동일한 방식으로 요금이 책정됩니다.

사용자 정의 지표, CloudWatch 로그 또는 두 가지 모두를 사용하여 데이터를 모니터링할 수 있습니다. 운영 체제 프로세스나 성능 측정값과 같이 아직 로그 형식으로 생성되지 않은 데이터의 경우 사용자 지표를 사용하는 것이 좋습니다. 또는 애플리케이션이나 스크립트를 직접 작성하거나 AWS 파트너가 제공하는 애플리케이션이나 스크립트를 사용할 수 있습니다. 추가 세부정보가 포함된 개별 측정값을 저장하려면 CloudWatch 로그를 사용하는 것이 좋습니다.

Amazon CloudWatch 지표의 통계치인 Average, Sum, Minimum, Maximum 및 Sample Count를 가져오고, 그래프로 작성하고, 경보를 설정할 수 있습니다. 60초에서 하루까지의 모든 기간에 대해 통계를 계산할 수 있습니다. 고단위 사용자 정의 지표의 경우 1초에서 3시간 사이의 모든 기간에 대해 통계를 계산할 수 있습니다.

.NET 및 SQL Server용 Amazon CloudWatch Application Insights는 .NET 및 SQL Server 애플리케이션을 쉽게 모니터링하는 데 사용할 수 있는 기능입니다. 이 기능은 애플리케이션 리소스 및 기술 스택(예: 데이터베이스, 웹(IIS) 및 애플리케이션 서버, OS, 로드 밸런서, 대기열 등) 전반에서 주요 지표 및 로그를 파악하고 설정할 수 있도록 지원합니다. 또한 이러한 텔레메트리 데이터를 지속적으로 모니터링함으로써 이상 항목 및 오류를 탐지하고 그 상관관계를 분석하여 애플리케이션의 문제를 사용자에게 알려줍니다. 이 기능은 문제 해결을 돕기 위해 자동 대시보드를 생성함으로써 탐지한 문제를 시각화합니다. 여기에는 상관관계가 있는 지표 이상 항목 및 로그 오류와 함께 잠재적인 근본 원인을 알려주는 추가 인사이트가 포함됩니다.

애플리케이션 지표 및 로그 자동 인식: 애플리케이션 리소스를 검색하여 모니터링할 권장 지표 및 로그 목록을 제공하고 자동으로 설정합니다. 따라서 애플리케이션에 대한 모니터링을 더욱 쉽게 설정할 수 있습니다. 

지능형 문제 탐지: 내장된 규칙 및 기계 학습 알고리즘을 사용하여 애플리케이션 스택 전반에 걸쳐 문제의 증상을 동적으로 모니터링 및 분석하고 애플리케이션 문제를 탐지합니다. 이에 따라 개별 지표 급증이나 이벤트 또는 로그 예외를 처리하는 데 드는 오버헤드를 줄이는 대신, 실제 문제에 대한 알림을 받고 이러한 문제에 대한 컨텍스트 기반 정보를 얻을 수 있습니다.

신속한 문제 해결: 탐지한 문제를 평가하여 그 문제에 대한 인사이트를 제공합니다. 예를 들어 탐지한 문제의 가능한 근본 원인과 함께 문제로 인해 영향을 받은 지표 및 로그 목록을 제공합니다. 사용자는 생성된 인사이트에 대한 피드백을 제공하여 사용 사례에 고유한 문제 탐지 엔진을 만들 수 있습니다.

애플리케이션 온보딩: 연결된 AWS Resource Group을 선택하여 모니터링하려는 애플리케이션을 지정합니다.

애플리케이션 구성 요소 파악: 애플리케이션 리소스를 분석하여 애플리케이션 구성 요소(독립 실행형 리소스 또는 오토 스케일링 및 로드 밸런서 그룹과 같은 관련 리소스 그룹)를 파악합니다. 또한 더 나은 통찰력 및 쉬운 온보딩을 위해 리소스를 그룹화하여 구성 요소를 사용자 지정할 수도 있습니다.

모니터링 활성화: 애플리케이션 구성 요소에 대해 기술 티어(예: IIS 프런트 엔드, .NET 작업자 티어 등)를 지정할 수 있습니다. 사용자의 선택을 기반으로, 필요에 따라 사용자 지정할 수 있는 권장 지표 및 로그 세트를 제공합니다. 이러한 “모니터”를 저장하면 .NET 및 SQL Server용 Application Insights는 CloudWatch를 설정하여 사용자를 대신해 이를 수집합니다.

온보딩 이후 .NET 및 SQL Server용 Application Insights는 사전 구축된 규칙과 기계 학습 모델 조합을 사용하여 애플리케이션 문제를 파악하기 시작합니다. 그리고 탐지한 문제 목록을 비롯하여 관련 이상 항목 및 오류와 함께 이러한 문제에 대한 세부 정보 보기를 제공하는 CloudWatch 자동 대시보드를 만듭니다.

CloudWatch Metric Streams는 최소한의 설정과 구성으로 선택한 대상으로 CloudWatch 지표를 지속적으로 스트리밍할 수 있는 기능입니다. 완전 관리형 솔루션이며 코드를 작성하거나 인프라를 유지관리할 필요가 없습니다. 몇 번의 클릭만으로 Amazon Simple Storage Service(S3)와 같은 대상에 대한 지표 스트림을 구성할 수 있습니다. 또한 운영 대시 보드를 최신 상태로 유지하기 위해 선택한 타사 서비스 공급자에게 지표를 보낼 수도 있습니다.

Metric Streams는 API를 폴링할 필요없이 CloudWatch에서 지표 데이터를 얻는 대체 방법을 제공합니다. 몇 번의 클릭만으로 지표 스트림을 만들 수 있으며 지표 데이터가 대상으로 흐르기 시작합니다. Amazon S3와 같은 Data Lake on AWS로 지표를 쉽게 전달하고 Amazon Athena와 같은 도구를 사용하여 사용량 또는 성능 분석을 시작할 수 있습니다. 또한 Metrics Streams를 사용하면 Amazon Kinesis Data Firehose HTTP 엔드포인트를 사용하여 CloudWatch 지표를 인기있는 타사 서비스 제공 업체에 쉽게 보낼 수 있습니다. 최신 CloudWatch 메트릭 데이터를 포함하여 확장 가능한 연속 스트림을 생성하여 정확하고 시기 적절한 메트릭 데이터를 사용하는 대시보드, 경보 및 기타 도구에 전원을 공급할 수 있습니다.

CloudWatch 콘솔을 통해 또는 CloudWatch API, AWS SDK, AWS CLI 또는 AWS CloudFormation을 통해 프로그래밍 방식으로 Metric Streams를 생성 및 관리하여 Metric Streams를 프로비저닝하고 구성 할 수 있습니다. 타사 서비스 공급자가 제공하는 AWS CloudFormation 템플릿을 사용하여 AWS 이외 대상으로 지표 스트림 전달을 설정할 수도 있습니다. 자세한 내용은 CloudWatch 지표 스트림 설명서를 참조하세요.

예. 기본적으로 모든 메트릭을 보내거나 네임스페이스로 정의된 지표 그룹을 포함 및 제외하는 필터 규칙을 만들 수 있습니다(예: AWS/EC2). Metric Streams는 필터 규칙과 일치하는 새 지표를 자동으로 감지하고 지표 업데이트를 스트림에 포함합니다. 리소스가 종료되면 Metric Streams는 비활성 지표에 대한 업데이트 전송을 자동으로 중지합니다.

Metric Streams는 OpenTelemetry 또는 JSON 형식으로 출력할 수 있습니다. 지표 스트림을 생성하거나 관리할 때 출력 형식을 선택할 수 있습니다.

예. Metric Streams 콘솔 페이지의 모니터링 섹션을 방문할 수 있습니다. 시간에 따른 지표 업데이트 볼륨에 대한 자동 대시 보드가 표시됩니다. 이러한 지표는 AWS/CloudWatch 네임스페이스에서도 이용할 수 있으며 볼륨이 비정상적으로 급증하는 경우 알림을 위한 경보를 생성하는 데 사용할 수 있습니다.

로그 모니터링

CloudWatch 로그를 사용하면 기존 시스템, 애플리케이션 및 사용자 정의 로그 파일을 이용하여 시스템 및 애플리케이션을 모니터링하고 문제를 해결할 수 있습니다.

CloudWatch 로그를 통해 특정 구문, 값 또는 패턴에 대한 로그를 거의 실시간으로 모니터링할 수 있습니다. 예를 들어 시스템 로그에 발생하는 오류 수에 대한 경보를 설정하거나 애플리케이션 로그에 기록된 웹 요청 지연 시간에 대한 그래프를 볼 수 있습니다. 그런 다음 원본 로그 데이터를 확인하여 문제의 원인을 파악할 수 있습니다. 로그 데이터는 안정성이 높고 저렴한 스토리지에 필요한 기간만큼 저장 및 액세스할 수 있으므로 하드 드라이브의 용량을 걱정하지 않아도 됩니다.

Amazon CloudWatch Vended 로그는 고객을 대신해 AWS 서비스에서 기본적으로 게시하는 로그입니다. VPC 흐름 로그는 이 단계별 모델이 최초로 적용되는 Vended 로그 유형입니다. 하지만 앞으로 더 많은 AWS 서비스 로그 유형이 Vended 로그 유형에 추가될 예정입니다.

CloudWatch Logs 서비스의 리전별 가용성에 대한 자세한 정보는 리전별 제품 및 서비스를 참조하세요.

최신 정보는 요금 페이지를 참조하세요.

CloudWatch 로그를 사용하면 로그를 모니터링하고 저장할 수 있어 시스템 및 애플리케이션을 이해하고 운영하는 데 도움이 됩니다. 로그와 CloudWatch Logs를 함께 사용하면, 모니터링에 기존 로그 데이터를 사용하므로 코드를 변경할 필요가 없습니다. Amazon CloudWatch와 로그를 사용하여 수행할 수 있는 작업의 두 가지 예는 다음과 같습니다.

실시간 애플리케이션 및 시스템 모니터링: CloudWatch Logs를 사용하면 로그 데이터를 이용해 애플리케이션 및 시스템을 거의 실시간으로 모니터링할 수 있습니다. 예를 들어 CloudWatch Logs에서는 애플리케이션 로그에서 발생하는 오류의 수를 추적하고 오류 비율이 지정한 임계값을 초과할 때마다 알림을 전송할 수 있습니다. Amazon CloudWatch는 로그 데이터를 사용해 모니터링하므로 사용자가 코드를 변경할 필요가 없습니다.

로그 장기 보존: CloudWatch Logs를 사용하면 하드 드라이브의 용량을 걱정할 필요 없이 안정성이 높고 비용 효율적인 스토리지에 필요한 기간만큼 로그 데이터를 저장할 수 있습니다. CloudWatch Logs 에이전트를 사용하면 순환 로그 파일과 비순환 로그 파일을 모두 호스트에서 로그 서비스로 쉽고 빠르게 이동할 수 있습니다. 그런 다음 필요한 경우 원시 로그 이벤트 데이터에 액세스할 수 있습니다.

EC2Config 서비스에서 CloudWatch로 사용자 정의 텍스트 로그, 이벤트(애플리케이션, 사용자 정의, 보안, 시스템) 로그, 이벤트 추적(ETW) 로그, 성능 카운터(PCW) 데이터 등의 다양한 데이터 및 로그 파일을 전송하도록 구성할 수 있습니다. 여기에서 EC2Config 서비스에 대해 자세히 알아보세요.

CloudWatch 로그 에이전트는 기본적으로 5초마다 로그 데이터를 전송하며 전송 빈도는 사용자가 구성할 수 있습니다.

CloudWatch 로그는 텍스트 기반의 모든 일반적인 로그 데이터 또는 JSON 형식 로그를 수집, 집계 및 모니터링할 수 있습니다.

비텍스트 로그 데이터를 보고하도록 구성된 경우 CloudWatch 로그 에이전트에서는 이를 오류로 기록합니다. 이 오류는 /var/logs/awslogs.log에 기록됩니다.

지표 필터를 생성하여 CloudWatch 로그로 전송된 로그 이벤트를 모니터링할 수 있습니다. 지표 필터는 그래프를 작성하거나 경보를 생성할 수 있도록 로그 데이터를 Amazon CloudWatch 지표로 변경합니다. 지표 필터는 콘솔 또는 CLI를 사용해 생성할 수 있습니다. 지표 필터는 로그 이벤트에서 일치하는 단어, 구문 또는 값을 검색합니다. 지표 필터가 로그 이벤트에서 단어, 구문 또는 값을 발견하면, 이를 사용자가 선택한 Amazon CloudWatch 지표로 계산합니다. 예를 들어 지표 필터를 생성하여 로그 이벤트에 '오류'라는 단어가 표시되는 경우를 검색하고 수를 파악할 수 있습니다. 지표 필터는 웹 요청에 대한 지연 시간과 같이 공백으로 구분된 로그 이벤트에서도 값을 추출할 수 있습니다. 또한 조건 연산자 및 와일드카드를 사용하여 정확히 일치되는 값을 찾을 수도 있습니다. Amazon CloudWatch 콘솔을 사용하면 지표 필터를 생성하기 전에 패턴을 테스트할 수 있습니다.

측정치 필터 패턴에는 검색어를 포함하거나 일반적인 로그 또는 JSON 이벤트 형식을 지정할 수 있습니다.

예를 들어 Error라는 단어를 검색하려면 지표 필터의 패턴은 Error라는 단어가 됩니다. 여러 검색어를 포함하면 여러 단어를 검색할 수 있습니다. 예를 들어 Error와 Exception이라는 단어가 포함된 이벤트의 수를 파악하려면 Error Exception이라는 패턴을 사용하면 됩니다. 오류 예외라는 단어와 정확하게 일치하는 단어를 검색하려면 "오류 예외"라는 검색어를 큰따옴표로 묶으면 됩니다. 검색어는 원하는 만큼 지정할 수 있습니다.

CloudWatch 로그는 일반적인 로그 또는 JSON 형식의 로그 이벤트에서 값을 추출하는 데 사용할 수도 있습니다. 예를 들어 Apache 액세스 로그에서 전송된 바이트를 추적할 수 있습니다. 또한 조건 연산자 및 와일드카드를 사용해 관심 있는 데이터를 검색하고 추출할 수 있습니다. 측정치 필터의 추출 기능을 사용하려면 로그 이벤트가 공백으로 구분되어야 하며, 시작 및 종료 큰따옴표 '"' 또는 시작 대괄호 '[' 및 종료 대괄호 ']'를 사용하여 필드를 둘러싸야 합니다. 아니면 JSON 형식의 로그 이벤트여도 됩니다. 구문에 대한 세부 정보 및 예는 지표 필터에 대한 개발자 안내서를 참조하세요.

CloudWatch 로그를 사용하면 지표 필터를 생성하기 전에 지표 필터 패턴을 테스트할 수 있습니다. 이미 CloudWatch 로그에 있는 로그 데이터에 대해 패턴을 테스트하거나 테스트할 로그 이벤트를 제공할 수도 있습니다. 패턴을 테스트하면 지표 필터 패턴과 일치하는 로그 이벤트를 파악할 수 있고 값을 추출하는 경우 테스트 데이터에서 추출되는 값을 확인할 수 있습니다. 지표 필터 테스트 기능은 콘솔 및 CLI에서 사용할 수 있습니다.

Amazon CloudWatch 지표 필터는 정규 표현식을 지원하지 않습니다. 로그 데이터를 정규 표현식으로 처리하려면, Amazon Kinesis 사용을 검토하여 스트림을 정규 표현식 처리 엔진과 연결하시기 바랍니다.

로그 관리

CloudWatch 로그 콘솔 또는 CloudWatch 로그 CLI를 통해 모든 로그 데이터를 가져올 수 있습니다. 로그 이벤트는 로그 그룹, 로그 스트림 및 관련 시간에 따라 가져올 수 있습니다. 로그 이벤트를 가져오는 CloudWatch 로그 API는 GetLogEvents입니다.

CLI를 사용해 로그 이벤트를 가져오고 명령줄 grep 또는 이와 유사한 검색 기능을 사용해 검색할 수 있습니다.

원하는 기간만큼 CloudWatch 로그에 로그 데이터를 저장할 수 있습니다. 기본적으로 CloudWatch 로그는 로그 데이터를 무기한으로 저장합니다. 언제든지 로그 그룹별로 보존 기간을 변경할 수 있습니다.

Amazon CloudWatch Logs Standard는 CloudWatch에서 제공하는 두 가지 로그 클래스 중 하나입니다. Logs Standard는 Live Tail, 지표 추출, 경보 발령, 데이터 보호와 같은 고급 분석 기능과 실시간 모니터링을 지원하기 위한 포괄적인 로그 관리를 제공합니다. 이 클래스를 사용하면 특정 구문, 값 또는 패턴에 대한 로그를 거의 실시간으로 모니터링할 수 있습니다. 예를 들어 시스템 로그에 발생하는 오류 수에 대한 경보를 설정하거나 애플리케이션 로그에 기록된 웹 요청 지연 시간에 대한 그래프를 볼 수 있습니다. 그런 다음 원본 로그 데이터를 확인하여 문제의 원인을 파악할 수 있습니다.

Amazon CloudWatch Logs Infrequent Access(Logs-IA)는 CloudWatch에서 제공하는 두 가지 로그 클래스 중 하나입니다. Logs-IA는 AWS의 모든 로그를 기본적으로 통합하기 위해 특별히 구축되었습니다. 저렴한 GB당 수집 요금으로 관리형 수집, 교차 계정 로그 분석, CloudWatch Logs Standard의 암호화를 사용할 수 있습니다. CloudWatch Logs-IA는 맞춤화된 기능을 저렴한 비용으로 사용할 수 있다는 점에서 임시 쿼리와 사후 포렌식 분석에 적합합니다. 로그 데이터는 안정성이 높고 저렴한 스토리지에 무기한으로 저장 및 액세스할 수 있으므로 하드 드라이브의 용량을 걱정하지 않아도 됩니다.

Amazon CloudWatch Logs Infrequent Access(Logs-IA)는 CloudWatch Logs가 제공되는 모든 AWS 리전에서 사용 가능합니다. 콘솔에서 시작하거나 AWS CLI 또는 API를 통해 프로그래밍 방식으로 시작할 수 있습니다.

로그 분석

Logs Insights에 액세스하려면 IAM 정책이 logs:DescribeLogGroups 및 logs:FilterLogEvents에 대한 권한을 포함해야 합니다.

Logs Insights를 사용하여 CloudWatch로 보내는 모든 로그를 쿼리할 수 있습니다. Logs Insights는 AWS 서비스(예: Lambda, CloudTrail, Route53, VPC Flow Logs)의 로그와 JSON 형식에서 로그 이벤트를 생성하는 애플리케이션 로그에서 로그 필드를 자동으로 검색합니다. 또한 모든 로그 유형에 대해 CloudWatch로 보내는 모든 로그에 3개의 시스템 필드 @message, @logStream, @timestamp를 생성합니다. @message는 구문 분석되지 않은 원시 로그 이벤트를 포함하고, @logStream은 로그 이벤트를 생성한 원본의 이름을 포함하며, @timestamp는 로그 이벤트가 CloudWatch에 추가된 시간을 포함합니다.

Logs Insights는 로그 처리를 위해 특별히 구축된 새로운 쿼리 언어를 도입하였습니다. 쿼리 언어는 단순하지만 강력한 몇 가지 쿼리 명령을 지원합니다. 하나 이상의 로그 필드를 검색하고, 하나 이상의 검색 기준과 일치하는 로그 이벤트를 찾고, 로그 데이터를 집계하고, 텍스트 기반 로그에서 단기 필드를 추출하는 명령을 작성할 수 있습니다. 쿼리 언어는 배우기 쉬우며, Logs Insights는 시작하는 데 도움이 되는 샘플 쿼리, 명령 설명, 쿼리 자동 완성 기능의 양식으로 제품 내 도움말을 제공합니다. 여기에서 쿼리 언어에 대한 자세한 내용을 확인할 수 있습니다.

서비스 한도는 여기에 나와 있습니다.

Log Insights는 미국 서부(오레곤), 미국 서부(캘리포니아 북부), 미국 동부(오하이오), 미국 동부(버지니아 북부), 아시아 태평양(뭄바이), 아시아 태평양(서울), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(도쿄), 캐나다(중부) EU(프랑크푸르트), EU(아일랜드), EU(파리) 및 남아메리카(상파울루)에서 사용할 수 있습니다.

집계, 필터, 정규 표현식, 텍스트 검색을 포함하는 쿼리를 작성할 수 있습니다. 또한 로그 이벤트에서 데이터를 추출하여 단기 필드를 생성할 수 있습니다. 그러면 찾으려는 정보에 액세스할 수 있도록 쿼리 언어에서 추가로 처리할 수 있습니다. 쿼리 언어는 문자열, 숫자, 수학 함수(예: concat, strlen, trim, log, sqrt 등)를 지원합니다. 또한 Boolean 및 논리 표현식과 집계 함수(예: min, max, sum, average, percentile 등)를 사용할 수도 있습니다. 여기에서 쿼리 언어 및 지원되는 함수에 대한 자세한 내용을 확인할 수 있습니다.

여기에서 쿼리 명령 목록을 찾을 수 있습니다. 여기에서 지원되는 함수 목록을 찾을 수 있습니다.

또한 시각화를 사용하여 로그에서 시간에 따라 나타나는 추세와 패턴을 식별할 수 있습니다. Logs Insights는 선형 차트와 누적 영역형 차트를 사용하여 데이터 시각화를 지원합니다. 그리고 하나 이상의 집계 함수를 포함하는 모든 쿼리에 대한 시각화를 생성합니다. 여기에서 데이터는 bin() 함수를 사용하여 지정된 기간에 따라 그룹화됩니다. 여기에서 시계열 데이터 시각화에 대한 자세한 내용을 확인할 수 있습니다.

Logs Insights에서는 Java 스타일의 정규 표현식을 사용할 수 있습니다. 정규 표현식은 필터 명령에서 사용할 수 있습니다. 제품 내 도움말이나 여기에서 정규 표현식을 사용하는 쿼리 예제를 찾을 수 있습니다.

백틱을 사용하여 특수 문자를 이스케이프 문자로 처리할 수 있습니다. 영숫자, @, 마침표(.)를 제외한 문자를 포함하는 로그 필드 이름은 백틱을 사용하여 이스케이프 문자로 처리해야 합니다.

Logs Insights에서 생성된 시스템 필드는 @ 기호로 시작합니다. Logs Insights는 현재 3개의 시스템 필드를 생성합니다. @message는 CloudWatch로 보내는 구문 분석되지 않은 원시 로그 이벤트를 포함하며, @logStream은 로그 이벤트를 생성한 원본의 이름을 포함하며, @timestamp는 로그 이벤트가 CloudWatch에 추가된 시간을 포함합니다.

Logs Insights에서는 2018년 11월 5일 이후 또는 CloudWatch Logs에 추가된 로그 데이터를 쿼리할 수 있습니다.

쿼리 명령 필터 @logStream = "log_stream_name" 을 로그 쿼리에 추가하여 특정 로그 스트림에서 로그 이벤트를 검색할 수 있습니다.

CloudWatch Logs는 이미 다른 AWS 서비스(예: Amazon Kinesis, Amazon Kinesis Data Firehose, Amazon Elasticsearch) 및 AWS Partner ISV 솔루션(예: Splunk, Sumo Logic, DataDog 등)과의 통합 옵션을 지원하여 사용자 정의 로그 처리, 보강, 분석, 시각화 요구를 위해 모든 환경에서 탄력성과 옵션을 제공합니다. 또한 CloudWatch Logs Insights의 쿼리 기능은 AWS SDK를 통한 프로그래밍 액세스에 사용할 수 있으며, 이를 통해 AWS ISV Partners는 보다 긴밀한 통합과 고급 분석을 구축하고 CloudWatch Logs Insights에서 추가 가치를 창출할 수 있습니다.

CloudWatch Logs Insights와 ISV Partner의 통합을 통해 로그 데이터를 한 곳에 모을 수 있으며, 많은 데이터를 보유하지 않고도 경제적이고 성능이 뛰어난 방식으로 원하는 도구와 프레임워크를 사용하여 분석할 수 있습니다. 또한 연결된 데이터 전송 지연을 없애 로그에 더 빨리 액세스할 수 있으며, 특정 데이터 전송을 구성하고 관리하며 발생하는 운영 복잡성을 없앨 수 있습니다.

Logs Live Tail

Amazon CloudWatch Logs Live Tail은 수신 로그를 실시간으로 볼 수 있는 새로운 대화형 분석 기능입니다. Live Tail을 사용하면 문제를 신속하게 해결할 수 있습니다. 개발자는 로그의 스트리밍 뷰를 활용하여 코드를 디버깅할 수 있고 IT 엔지니어는 배포 상태를 안정적으로 모니터링할 수 있습니다. Live Tail은 관련 이벤트의 컨텍스트에 대한 실시간 대화형 로그 보기를 제공하여 평균 탐지 시간을 줄이고 결과적으로 평균 해결 시간을 단축하는 데 도움이 됩니다.

네이티브 AWS Observability 도구 내에서 애플리케이션 또는 배포 문제를 즉시 감지하려면 대화형 CloudWatch Live Tail 기능을 사용해야 합니다. Live Tail을 사용하면 DevOps 팀이 여러 도구 간에 전환하지 않고도 개발 환경 내에서 중요한 애플리케이션 로그와 디버그 코드를 심층적으로 파악할 수 있습니다. Live Tail을 사용하여 배포 상태 및 상태를 모니터링하면 IT 엔지니어, 운영 지원 및 중앙 보안 팀이 서비스 및 애플리케이션을 효율적으로 모니터링하여 근본 원인 분석을 가속화하고 평균 해결 시간을 단축할 수 있습니다.

Live Tail은 사용자 지정 애플리케이션 로그에 Live Tail 기능을 제공하는 것 외에도 고객이 Amazon Virtual Private Cloud, Amazon Route53, AWS Lambda, Amazon Elastic Kubernetes 서비스, Amazon Elastic 컨테이너 서비스 등을 비롯한 AWS 서비스를 통해 로그에 대한 심층적인 통찰력을 얻을 수 있도록 지원합니다. AWS 서비스는 Live Tail 위젯을 사용하여 동일한 대화형 라이브 테일링 경험을 콘솔에 내장할 수 있습니다. 또한 다른 서비스(예: Amazon Managed Grafana, AWS Thinkbox)를 통해 직접 통합을 구현하여 자체 콘솔 및 로그 이벤트를 생성하는 모든 애플리케이션 로그 내에서 동일한 심층 분석 기능을 제공할 수도 있습니다.

이 기능이 의도한 대로 작동하려면 사용자에게 다음 작업을 허용해야 합니다. Live Tail 세션을 시작할 때 관리자 역할의 일부가 아니거나 로그: *를 포함하는 정책이 있는 경우 정책 설명에 logs:StartLiveTail 및 logs:StopLiveTail과 같은 작업을 추가해야 합니다.

Live Tail 서비스 한도에 대해 자세히 알아보세요.

Live Tail은 미국 동부(오하이오), 미국 동부(버지니아 북부), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 아시아 태평양(뭄바이), 아시아 태평양(서울), 아시아 태평양(싱가포르) 아시아 태평양(시드니), 아시아 태평양(도쿄), 캐나다(중부), EU(프랑크푸르트), EU(아일랜드), EU(런던), EU(파리) 및 남아메리카(상파울루) 리전에서 사용할 수 있습니다.

로그 그룹, 로그 스트림을 기준으로 필터링하고 키워드로 필터링할 수 있습니다. 로그 그룹 선택은 모니터링 계정에 있을 때 여러 계정에서 여러 항목을 선택할 수 있도록 지원합니다(크로스 계정 관측성). 로그 스트림 선택은 이름 또는 접두사에 따른 다중 선택을 지원합니다. 키워드별 필터링은 대소문자를 구분합니다. 하나 이상의 키워드(예: 오류, 예외 또는 오류)를 입력하여 검색 범위를 더 좁힐 수 있습니다. 키워드를 입력하거나 정보 패널에 제공된 샘플을 복사하여 붙여넣을 수 있습니다. 필터 패턴에 대해 자세히 알아보세요.

아니요. Live Tail에서는 CloudWatch에서 수집한 로그 데이터를 실시간으로 볼 수 있습니다. 과거 로그는 로그 인사이트 및 로그 그룹 기능을 참조하세요.

로그 데이터 보호

데이터 보호는 CloudWatch Logs의 기능 중 하나입니다. 데이터 보호를 사용하면 시스템 및 애플리케이션에서 수집되는 로그 안의 민감한 데이터를 자동으로 검색하고 마스킹하는 자체 규칙 및 정책을 정의할 수 있습니다. 이 작업은 기계 학습(ML) 및 패턴 일치를 사용하여 수행됩니다. 데이터를 봐야 하는 경우 Identity and Access Management(IAM) 권한을 승격하여 데이터의 마스킹을 해제할 수 있습니다.

민감한 데이터가 로깅되는 것을 방지하기 위해 고객은 수동 조사에 의존하거나 로그를 삭제하는 간략한 로그 보존 정책을 구성하는데, 이렇게 하면 귀중한 운영 로그가 손실될 위험이 증가합니다. CloudWatch Logs 데이터 보호는 로그에 액세스할 필요 없이 패턴 일치 및 ML을 사용하여 로그의 민감한 정보를 자동으로 식별하고 마스킹합니다. 이 기능은 개인 정보를 저장하지 않아야 하는 엄격한 규제를 받는 산업에 유용합니다. 또한 다량의 개인 정보 및 민감한 정보가 필요한 결제 또는 인증 서비스를 구축하는 고객은 이 새로운 기능을 사용하여 정보가 불필요하게 로그에 저장될 가능성을 낮출 수 있습니다.

CloudWatch Logs에서 데이터 보호 정책을 생성할 때 보호할 데이터를 지정할 수 있습니다. 이메일 주소, 여러 국가의 운전 면허증, 신용카드 번호, 주소와 같은 여러 데이터 식별자 중에서 선택할 수 있습니다. 다양한 대상 데이터 식별자가 제공되므로 애플리케이션에 사용되는 민감한 데이터를 유연하게 선택하고 쉽게 액세스할 수 없어야 하는 민감한 데이터를 마스킹할 수 있습니다. 애플리케이션에 민감한 정보가 어떤 것인지 결정하고 사용 사례와 관련된 식별자를 선택하는 것이 중요합니다.

경보

경보를 생성하여 계정에 있는 어떤 Amazon CloudWatch 지표든 모니터링할 수 있습니다. 예를 들어 Amazon EC2 인스턴스 CPU 사용률, Amazon ELB 요청 지연 시간, Amazon DynamoDB 테이블 처리량, Amazon SQS 대기열 길이에 대한 경보는 물론, AWS 청구서 요금에 대한 경보도 만들 수 있습니다.

또한, 사용자 지정 애플리케이션 또는 인프라에 특정된 사용자 지정 지표에 대한 경보도 생성할 수 있습니다. 사용자 지정 지표가 고단위 지표인 경우, 10초 또는 30초 간격으로 알리도록 고단위 경보를 생성할 수 있습니다.

복합 경보를 사용하면 여러 경보를 경보 계층 구조로 결합할 수 있습니다. 이렇게 하면 여러 경보가 동시에 울릴 때 한 번만 트리거되어 경보 소음이 줄어듭니다. 애플리케이션, AWS 리전 또는 가용 영역과 같은 리소스 그룹의 전반적인 상태를 확인할 수 있습니다.

자세한 내용은 CloudWatch 요금 페이지를 참조하세요.

경보 생성 시, 모니터링하기로 선택한 측정치가 정의한 임계값을 초과할 때 경보에서 하나 이상의 자동화된 작업을 수행하도록 구성할 수 있습니다. 예를 들어 이메일을 전송하거나, SQS 대기열에 게시하거나, Amazon EC2 인스턴스를 중단 또는 종료하거나, Auto Scaling 정책을 실행하도록 경보를 설정할 수 있습니다. Amazon CloudWatch 경보는 Amazon Simple Notification Service와 통합되어 있으므로 SNS에서 지원되는 모든 알림 유형도 사용할 수 있습니다. AWS Systems Manager OpsCenter 작업을 사용하면 경보가 ALARM 상태로 들어갈 때 OpsItem을 자동으로 생성할 수 있습니다. 이렇게 하면 사용자가 단일 콘솔에서 AWS 리소스 관련 문제를 빠르게 진단하고 해결할 수 있습니다.

경보를 만들 때 모니터링할 Amazon CloudWatch 지표를 먼저 선택합니다. 그런 다음 평가 기간(예: 5분 또는 1시간) 및 측정할 통계치(예: Average 또는 Maximum)를 선택합니다. 임계값을 설정하려면 목표 값을 설정하고 값이 해당 값보다 크거나(>), 크거나 같거나(>=), 작거나(<), 작거나 같을(<=) 때 경보를 트리거할지를 선택합니다.

경보는 이미 트리거된 후에도 선택한 임계값의 지표를 계속해서 평가합니다. 이를 통해 언제든지 경보의 최신 상태를 확인할 수 있습니다. 경보에 따라서는 한참 동안 경보 상태로 유지될 수도 있습니다. 지표 값이 임계값을 계속 초과하는 경우 임계값을 더는 초과하지 않을 때까지 경보가 경보 상태로 유지됩니다. 이 현상은 정상적인 동작입니다. 경보에서 이 새로운 수준이 정상으로 처리되도록 하려면 경보 임계값을 적절하게 조정해야 합니다.

경보 기록은 14일 동안 사용할 수 있습니다. 경보 기록을 보려면 AWS Management Console에서 CloudWatch에 로그인하고, 왼쪽 메뉴에서 Alarms를 선택하고, 원하는 경보를 선택한 다음, 아래쪽 창에서 History 탭을 클릭합니다. 여기에서 경보에 대한 모든 상태 변경 기록 및 경보 구성에 대한 수정 내역을 확인할 수 있습니다.

대시보드

Amazon CloudWatch 대시보드를 사용하면 AWS 리소스 및 사용자 정의 지표의 그래프를 생성, 사용자 정의, 상호 작용 및 저장할 수 있습니다.

시작하려면 Amazon CloudWatch 콘솔에서 ‘대시보드’를 선택합니다. “Create Dashboard" 버튼을 클릭합니다. Automatic Dashboards에서 [Options] -> [Add to Dashboard]를 클릭하여 원하는 보기를 복사할 수 있습니다.

Automatic Dashboards는 AWS 서비스에서 추천하는 모범 사례로 사전 구축되었으며, 리소스에 기반하여, 중요한 성능 지표의 최신 상태를 반영하도록 동적으로 업데이트됩니다. 이제 코드를 더 추가하지 않고도 AWS 리소스의 최신 상태를 반영하도록 특정 보기를 필터링하고 문제를 해결할 수 있습니다. 성능 문제의 근본 원인을 식별한 후에는 AWS 리소스로 직접 이동하여 빠르게 조치할 수 있습니다.

예. 대시보드는 열려있는 동안 자동으로 새로 고침됩니다.

예. 대시보드는 계정에서 대시보드에 대한 적절한 권한을 가진 누구나 사용할 수 있습니다.

이벤트

Amazon CloudWatch Events(CWE)는 AWS 리소스의 변경을 설명하는 시스템 이벤트 스트림입니다. 이벤트 스트림은 기존 CloudWatch 지표 및 로그 스트림을 보강하여 애플리케이션 상태에 대한 좀 더 완벽한 설명을 제공합니다. 관심 있는 이벤트와 이에 따라 자동으로 수행할 작업을 연결하는 선언적 규칙을 작성합니다.

현재 Amazon EC2, Auto Scaling 및 AWS CloudTrail에서 지원합니다. 모든 서비스에서 API 호출(예: Describe*, List* 및 Get*를 제외한 모든 호출)을 변경하는 것을 AWS CloudTrail을 통해 CloudWatch Events에서 볼 수 있습니다.

이벤트가 시스템에 생성해 둔 규칙과 일치하는 경우, AWS Lambda 함수를 자동으로 호출하고, 해당 이벤트를 Amazon Kinesis 스트림에 전달하고, Amazon SNS 주제를 알리거나, 내장 워크플로를 호출할 수 있습니다.

예. PutEvents API를 사용하여 애플리케이션에서 사용자의 필요에 적합한 페이로드와 함께 사용자 정의 이벤트를 내보낼 수 있습니다.

CloudWatch Events에서는 널리 사용되는 Unix Cron 구문을 사용하여 사용자가 설정한 일정에 따라 이벤트를 생성할 수 있습니다. 이러한 이벤트를 모니터링함으로써 예약된 애플리케이션을 구현할 수 있습니다.

CloudWatch Events는 AWS 리소스에 대한 변경을 설명하는, 거의 실시간의 시스템 이벤트 스트림입니다. CloudWatch Events를 사용하면, 특정 이벤트를 모니터링하고 자동으로 작업을 수행하도록 규칙을 정의할 수 있습니다. AWS CloudTrail은 AWS 계정에 대한 API 호출을 기록하고 API 호출이 포함된 로그 파일을 Amazon S3 버킷이나 CloudWatch Logs 로그 그룹에 전달하는 서비스입니다. AWS CloudTrail을 사용하면, AWS 리소스의 생성, 삭제 및 변경과 관련된 API 활동 기록을 검색하고, 운영 문제나 보안 문제를 해결할 수 있습니다.

AWS Config는 AWS 리소스 인벤토리, 구성 기록, 구성 변경 알림을 제공하여 보안 및 거버넌스를 실현하는 완벽한 관리형 서비스입니다. Config 규칙을 사용하면 구성 변경이 규정을 준수하는지 확인할 수 있습니다. CloudWatch Events는 리소스 상태 변경에 대해 거의 실시간으로 대응하기 위한 서비스입니다. 해당 변경이 정책을 준수하는지에 대한 의견을 주거나 Config/Config Rules에서 제공하는 것과 같은 상세한 기록을 제공하지 않습니다. CloudWatch Events는 범용 이벤트 스트림입니다.

컨테이너 모니터링

CloudWatch Container Insights는 컨테이너식 애플리케이션 및 마이크로서비스에서 모니터링 및 문제를 해결하고 경보를 제공하는 기능입니다. Container Insights는 컨테이너 환경에 영향을 미치는 성능 문제를 간단히 분석할 수 있게 해 줍니다. DevOps 및 시스템 엔지니어는 CloudWatch 콘솔의 자동 대시보드에 액세스하여 Amazon Elastic Container Service for Kubernetes(EKS), Amazon Elastic Container Service(ECS), AWS FargateKubernetes 클러스터의 성능 및 상태가 요약된 지표, 로그 및 분산 트레이스를 포드/작업, 컨테이너 및 서비스별로 운영 측면에서 포괄적으로 파악할 수 있습니다.

Amazon Elastic Kubernetes Service(EKS)에 Container Insights와 함께 향상된 관찰성을 사용하면 EKS 컨테이너 계층을 시각적으로 드릴업 및 드릴다운하여 개별 컨테이너에서 메모리 누수와 같은 문제를 손쉽게 발견하여 평균 해결 시간을 줄일 수 있습니다. 또한 이제 컨트롤 플레인 지표를 통해 Auto Scaling 상태를 모니터링하고 자동화된 테스트 기능에서 테스트 클러스터 수명 주기를 계획하여 운영 효율성을 개선할 수 있습니다. 이제 EKS에 향상된 관찰성을 사용하여 리소스 소비량을 기준으로 클러스터, 노드 또는 워크로드를 분류하고, 이상 현상을 신속하게 파악하고, 자체 경보를 설정하여 면밀히 모니터링하며, 최종 사용자 경험에 영향을 받기 전에 사전 예방적으로 위험을 완화할 수 있습니다.

예. Amazon Elastic Kubernetes Service(EKS)에 Container Insights와 함께 향상된 관찰성을 사용하여 컨트롤 플레인 상태를 모니터링할 수 있습니다. 이를 사용하여 Auto Scaling 상태를 파악하고 자동화된 테스트 기능 등에서 테스트 클러스터 수명 주기를 계획할 수 있습니다.

Amazon Elastic Kubernetes Service(EKS)에 대한 향상된 관찰성을 사용하는 Container Insights는 빠른 문제 격리 및 해결을 위한 컨테이너 수준 EKS 성능 지표, Kube 상태 지표, EKS 컨트롤 플레인 지표 등 즉시 사용 가능한 상세한 상태 및 성능 지표를 제공합니다. 고객은 향상된 관찰성을 활용하여 다양한 컨테이너 계층 전체를 시각적으로 자세히 살펴보고 개별 컨테이너의 메모리 누수와 같은 문제를 손쉽게 발견하여 평균 해결 시간을 단축할 수 있습니다. 또한 이제 컨트롤 플레인 지표를 통해 Auto Scaling 상태를 모니터링하고 자동화된 테스트 기능에서 테스트 클러스터 수명 주기를 계획하여 운영 효율성을 개선할 수 있습니다. 이제 향상된 관찰성을 사용하여 리소스 소비량을 기준으로 클러스터, 노드 또는 워크로드를 분류하고, 이상 현상을 신속하게 파악하고, 자체 경보를 설정하여 면밀히 모니터링하며, 최종 사용자 경험에 영향을 받기 전에 사전 예방적으로 위험을 완화할 수 있습니다. 향상된 관찰성은 선택적 기능입니다. 향상된 관찰성을 사용하지 않는 Container Insights는 클러스터 수준 및 서비스 수준에서 지표를 집계합니다.

예. Container Insights를 사용할 때 클러스터별로 향상된 관찰성의 사용 여부를 결정할 수 있습니다. 클러스터 정보 보기의 애드온 탭을 사용하여 클러스터를 생성한 후 클러스터에 EKS용 CloudWatch Observability 애드온을 설치하여 클러스터에 향상된 관찰성을 사용할 수 있습니다. EKS에 향상된 관찰성을 사용하도록 CloudWatch 에이전트를 구성하는 방법에 대한 CloudWatch Container Insights 설명서를 참조하세요.

Container Insights의 향상된 관찰성은 Amazon EKS를 지원합니다.

클릭 몇 번으로 컨테이너 및 클러스터에서 자세한 성능 지표, 로그 및 메타데이터를 수집하거나 CloudWatch Observability 애드온을 활성화하여 관찰성을 높일 수 있습니다. 컨테이너 인사이트 사용을 시작하려면 Amazon CloudWatch Container Insights 설명서에 제공된 단계를 따르세요.

Container Insights의 자세한 요금 정보는 CloudWatch 요금 페이지에서 확인할 수 있습니다.

아니요, 현재 지원되는 지표 유형은 게이지와 카운터입니다. 히스토그램과 요약 지표는 이후의 릴리스에서 지원할 예정입니다.

Prometheus는 CNCF(Cloud Native Compute Foundation)의 일부인 인기 오픈 소스 모니터링 프로젝트입니다. 이 오픈 소스 커뮤니티는 DevOps 팀에서 풀 기반 접근 방식을 사용하여 애플리케이션에서 수집할 사용자 지정 지표를 노출할 때 사용할 수 있는 프레임워크를 정의하고 150개 이상의 플러그인을 구축했습니다. DevOps 팀에서는 이 새로운 기능을 사용하여 AWS App Mesh, NGINX 및 Java/JMX와 같은 컨테이너식 워크로드를 위한 서비스를 자동으로 검색할 수 있습니다. 또한, 이러한 서비스에 대한 사용자 지정 지표를 노출하고 CloudWatch에서 해당 지표를 수집할 수 있습니다. CloudWatch 사용자는 Prometheus 지표의 수집 및 집계를 큐레이션하여 필요한 모니터링 도구의 수를 줄이면서 애플리케이션 성능 저하 및 장애에 대한 모니터링, 문제 해결 및 경보 작업을 더 빠르게 수행할 수 있습니다.

Prometheus 지표는 CloudWatch 사용자 정의 지표로 자동 수집됩니다. 보존 기간은 지표 데이터 포인트당 15개월이며 자동 롤업이 적용됩니다(60초 미만은 3시간, 1분은 15일, 5분은 63일, 1시간은 15개월). 자세한 내용은 CloudWatch 지표 보존 설명서를 참조하세요.

아니요. 모든 지표는 CloudWatch Logs 이벤트로 수집되고 CloudWatch Logs Insights 쿼리를 사용하여 쿼리할 수 있습니다. 자세한 내용은 CloudWatch Logs Insights 검색 언어 구문을 참조하세요.

예. 각 Kubernetes(k8s) 클러스터는 이벤트에 대한 자체적인 로그 그룹(예: /aws/containerinsights//prometheus)이 있고, 각각의 구성 보존 기간이 지정되어 있습니다. 자세한 내용은 로그 그룹 보존 설명서를 참조하세요.

다음과 같이 사용량에 따라 요금이 부과됩니다. (1) 수집된 CloudWatch Logs, 기가비트(GB) 단위, (2) 저장된 CloudWatch Logs 및 (3) CloudWatch 사용자 지정 지표. AWS 리전의 요금 세부 정보는 CloudWatch 요금 페이지를 참조하세요.

인터넷 모니터링

Amazon CloudWatch Internet Monitor는 AWS에서 호스팅되는 애플리케이션과 애플리케이션 최종 사용자 간의 인터넷 가용성 및 성능 지표를 지속적으로 모니터링하는 데 도움이 됩니다. Internet Monitor를 사용하면 문제의 영향을 빠르게 시각화하고, 영향을 받는 위치와 공급자를 정확하게 파악한 후, 최종 사용자의 네트워크 경험 개선을 위한 조치를 취할 수 있습니다. 트래픽 패턴과 상태 이벤트의 글로벌 뷰를 확인할 수 있으며, 다양한 지리적 세부 수준에서 이벤트 관련 정보로 드릴다운할 수 있습니다. AWS 네트워크로 인한 문제가 발생하면 AWS Health Dashboard 알림이 수신됩니다. 이 알림에서 문제 완화를 위해 AWS에서 진행 중인 단계를 확인할 수 있습니다. Internet Monitor는 또한 다른 AWS 서비스를 사용하여 사용자 경험을 개선하는 데 도움이 되는 관련 인사이트와 권장 사항도 제공합니다.

Internet Monitor를 사용하려면 모니터를 생성하고 애플리케이션 리소스를 모니터, Amazon Virtual Private Cloud(VPC), CloudFront 배포 또는 WorkSpaces 디렉터리에 연결합니다. 이렇게 하면 Internet Monitor에서 애플리케이션의 인터넷 트래픽 위치를 알 수 있습니다. Internet Monitor는 애플리케이션과 통신하는 위치 및 네트워크와 관련된 AWS의 인터넷 측정값을 제공합니다.

고객은 CloudWatch 대시보드를 사용하여 상태 이벤트에 대해 알아보고, 성능 및 가용성 점수를 보고, 다양한 지리 단위에서 애플리케이션의 기록 데이터를 살펴보고, 최종 사용자에게 제공되는 성능을 개선하기 위해 애플리케이션을 어떻게 구성할지에 대한 인사이트를 얻을 수 있습니다.

Internet Monitor는 인터넷 측정값을 CloudWatch Logs 및 CloudWatch Metrics에 게시하므로 CloudWatch 도구를 사용하여 애플리케이션과 관련된 지리 및 네트워크의 애플리케이션 상태를 손쉽게 파악할 수 있습니다. Internet Monitor는 Amazon EventBridge로도 상태 이벤트를 전송하므로 알림을 설정할 수 있습니다.

Internet Monitor를 살펴보면 이 서비스에 참조된 구성 요소 및 개념을 익히는 데 도움이 됩니다. Internet Monitor는 Monitor, CloudWatch 로그, CloudWatch 지표, 도시 네트워크, 상태 이벤트, Autonomous System Number(ASN), 모니터링되는 리소스, 인터넷 측정값, 왕복 시간, 전송된 바이트, 성능 및 가용성 점수를 사용하거나 참조합니다.

설명서에서 이러한 구성 요소에 대한 간략한 설명을 읽어보세요.

Internet Monitor 요금에는 모니터링되는 리소스당 요금, 도시 네트워크당 요금, CloudWatch Logs에 게시된 진단 로그에 대한 요금과 같은 구성 요소가 있습니다. 자세한 내용은 Amazon CloudWatch Internet Monitor 요금 페이지를 참조하세요.

Internet Monitor의 리전별 지원은 모니터에 추가하는 리소스 유형에 따라 다릅니다. Amazon CloudFront 배포 및 Amazon WorkSpaces 디렉터리의 경우 지원되는 모든 리전에서 Internet Monitor를 사용할 수 있습니다. Amazon Virtual Private Cloud(VPC)의 경우 옵트인 리전의 VPC를 동일한 리전에 생성된 모니터에만 추가할 수 있습니다. 지원되는 AWS 리전의 전체 목록은 Amazon CloudWatch Internet Monitor 엔드포인트를 참조하세요.

Lambda 모니터링

CloudWatch Lambda Insights는 Lambda 함수의 성능 및 비용에 대한 모니터링, 문제 해결 및 최적화를 위한 기능입니다. Lambda Insights를 사용하면 Lambda 환경에 영향을 미치는 성능 문제를 간단히 분석할 수 있습니다. DevOps 및 시스템 엔지니어는 CloudWatch 콘솔에서 자동 대시보드에 액세스하여 운영 중인 AWS Lambda 함수의 성능 및 상태를 요약한 지표, 로그 및 트레이스를 완벽하게 파악할 수 있습니다.

CloudWatch Lambda Insights 설명서에 나와 있는 단계를 수행하면 Lambda 함수의 자세한 성능 지표, 로그 및 메타데이터를 수집할 수 있습니다.

CloudWatch Lambda Insights는 Lambda 함수에서 CloudWatch Logs로 수집되는 성능 이벤트에서 사용자 지정 지표를 자동으로 수집합니다. 자세한 요금 정보는 CloudWatch 요금 페이지에서 확인할 수 있습니다.

디지털 경험 모니터링

Amazon CloudWatch DEM을 사용하면 최종 사용자가 애플리케이션을 경험하는 방식(성능, 가용성 및 사용 편의성 포함)을 모니터링할 수 있습니다. 

CloudWatch Synthetic 카나리아를 사용하여 간헐적인 문제를 발견하고, 사용자 트래픽이 없을 때도 알림을 받고, 엔드포인트와 UI를 모니터링합니다. CloudWatch RUM으로 종합 모니터링을 보완하여 최종 사용자에게 미치는 영향을 이해하고 디지털 경험을 더 잘 파악할 수 있습니다. CloudWatch Evidently를 사용하면 새로운 디자인과 기능을 실험하고 검증하여 최종 사용자의 디지털 경험을 개선할 수 있습니다. 

Amazon CloudWatch RUM은 애플리케이션의 클라이언트 측 성능에 대한 가시성을 제공하여 평균 해결 시간(MTTR)을 줄이는 데 도움이 되는 실제 사용자 모니터링 기능입니다. CloudWatch RUM을 사용하면 웹 애플리케이션 성능에 대한 클라이언트 측 데이터를 실시간으로 수집하여 문제를 식별하고 디버그할 수 있습니다. 또한 CloudWatch Synthetics 데이터를 보완하여 최종 사용자의 디지털 경험에 대한 가시성을 높입니다. 성능의 이상을 시각화하고 관련 디버깅 데이터(예: 오류 메시지, 스택 추적 정보 및 사용자 세션)를 사용하여 성능 문제(예: JavaScript 오류, 충돌 및 대기 시간)를 수정할 수 있습니다. 세션 수, 지리적 위치 또는 브라우저를 포함하여 최종 사용자에게 미치는 영향 범위를 파악할 수도 있습니다. CloudWatch RUM은 애플리케이션을 통한 사용자의 여정에 대한 데이터를 집계하여, 시작할 기능과 우선순위를 지정할 버그 수정을 결정하는 데 도움이 될 수 있습니다.

CloudWatch RUM에서 앱 모니터를 생성하고 애플리케이션의 HTML 헤더에 경량 웹 클라이언트를 추가합니다. 그런 다음 CloudWatch RUM의 대시보드를 사용하여 다양한 지리적 위치, 장치, 플랫폼 및 브라우저에서 사용자 인사이트를 받습니다. 

Amazon CloudWatch Evidently를 통해 새로운 기능을 일반 용도로 출시하기 전에 실험을 수행하고 의도하지 않은 결과를 식별할 수 있으므로 새로운 기능 출시와 관련된 위험을 줄일 수 있습니다. Evidently를 사용하면 릴리스 전에 전체 애플리케이션 스택에서 새로운 기능을 검증할 수 있으므로 릴리스가 더 안전해집니다. 새 기능을 출시할 때 해당 기능을 더 소규모의 사용자 기반에 노출하고 페이지 로드 시간 또는 전환과 같은 주요 지표를 모니터링한 다음 트래픽을 확장할 수 있습니다. 또한 개발자는 Evidently를 사용하여 다양한 디자인을 시도하고, 사용자 데이터를 수집하고, 프로덕션에서 가장 효과적인 디자인을 출시할 수 있습니다. 고급 통계 지식 없이도 실험 결과를 해석하고 이에 따라 조치를 취할 수 있습니다. Evidently의 통계 엔진에서 제공하는 인사이트(예: 상시 p-값 및 신뢰 구간)을 사용하여 실험이 진행되는 동안 결정을 내릴 수 있습니다.

CloudWatch RUM JavaScript 코드 조각을 사용하여 클라이언트 측 사용자 여정과 성능 지표를 수집할 수 있습니다. 원하는 경우 Evidently API를 사용하여 전환과 같은 사용자 정의 지표를 추가할 수도 있습니다. 다음으로, 사용자가 새로운 기능에 노출되는 방식을 제어하는 기능을 제공하는 CloudWatch Evidently SDK로 테스트할 새로운 기능을 계측할 수 있습니다. 이제 AWS 콘솔 또는 CLI를 사용하여 시작 및 실험을 실행할 수 있습니다. 

Amazon CloudWatch Synthetics를 사용하면 애플리케이션 엔드포인트를 보다 쉽게 모니터링할 수 있습니다. 쉬지 않고 1분마다 엔드포인트에서 검사를 실행해 애플리케이션 엔드포인트가 예상과 다른 동작을 하는 즉시 알림을 보냅니다. 이 테스트는 맞춤 설정을 통해 가용성, 지연, 트랜잭션, 손상되거나 연결이 끊어진 링크, 단계별 작업 완료 상태, 페이지 부하 오류, UI 자신의 부하 지연, 복잡한 마법사 플로 또는 애플리케이션의 체크아웃 플로를 검사하도록 설정할 수 있습니다. 또한, CloudWatch Synthetics를 사용하여 문제가 있는 애플리케이션 엔드포인트를 분리하고 기본 인프라 문제로 다시 매핑해 문제 해결에 걸리는 시간을 단축할 수 있습니다.

CloudWatch Synthetics는 쉽게 시작할 수 있습니다. 첫 번째 통과 Canary를 몇 분 안에 작성할 수 있습니다. 자세한 알아보려면 Amazon CloudWatch Synthetics에 대한 설명서를 참조하세요.

두 서비스를 별도로 사용할 수도 있지만 함께 사용하면 더욱 좋습니다.

AppConfig는 기능 플래그 및 기타 애플리케이션 구성을 생성, 관리 및 배포하는 데 사용할 수 있는 AWS Systems Manager의 기능입니다. 새 기능을 개발할 때 AppConfig를 사용하여 새 기능을 프로덕션에 배포할 수 있지만 플래그 토글 뒤에 숨길 수 있습니다. 시작할 준비가 되면 구성을 업데이트하여 기능을 즉시 또는 점진적으로 릴리스하기만 하면 됩니다.

고급 기능 관리 및 실험을 위해 Amazon CloudWatch의 새로운 기능인 Evidently를 사용할 수 있습니다. Evidently를 사용하면 다양한 기능 변형에 대한 실험을 실행하고 기준과 비교하거나 일정에 따라 기능 변형을 시작하면서 방문 기간 및 수익과 같은 비즈니스 지표를 모니터링할 수 있습니다. 또한 Evidently는 클라이언트 측 애플리케이션 성능 모니터링을 제공하는 CloudWatch RUM과도 통합되므로 RUM 지표를 Evidently에서 직접 사용할 수 있습니다.

지표 분석

CloudWatch Metrics Insights는 표준 SQL 쿼리를 사용하여 실시간으로 운영 지표를 분할 및 분석하고 즉석에서 집계를 생성하는 데 도움이 되는 고성능 쿼리 엔진입니다. Metrics Insights는 규모에 맞게 지표를 분석할 수 있는 기능을 제공하여 애플리케이션 상태 및 성능 상태를 이해하는 데 도움이 됩니다. CloudWatch 대시보드와 통합되어 있으므로 쿼리를 상태 및 성능 대시보드에 저장하여 문제를 사전에 모니터링하고 신속하게 찾아낼 수 있습니다.

시작하려면 CloudWatch 콘솔에서 Metrics(지표) 탭을 클릭하면 됩니다. 그러면 추가 비용 없이 Query(쿼리) 탭에서 기본 제공 쿼리 엔진으로 Metrics Insights를 찾을 수 있습니다. Metrics Insights는 표준 SQL 언어와 함께 제공되지만 시각적 쿼리 빌더를 사용하여 Metrics Insights를 시작할 수도 있습니다. 쿼리 빌더를 사용하려면 관심 지표, 네임스페이스 및 차원을 시각적으로 선택하면 콘솔이 선택 사항에 따라 SQL 쿼리를 자동으로 생성합니다. 쿼리 편집기를 사용하여 언제든지 원시 SQL 쿼리를 입력하여 더 세분화된 세부 사항에 대해 깊이 분석하여 문제를 정확히 찾아낼 수 있습니다. Metrics Insights는 또한 즉시 애플리케이션 성능 모니터링 및 조사를 시작하는 데 도움이 되는 일련의 즉시 사용 가능한 샘플 쿼리와 함께 제공됩니다. Metrics Insights는 CloudFormation, AWS SDK 및 CLI를 통해 프로그래밍 방식으로도 사용할 수 있습니다.