클라우드(AWS)/DVA-C02

[AWS] CloudWatch의 PutMetricData란? 쉽게 정리 (커스텀 메트릭 만들기)

찌르비 2024. 12. 6. 18:49
반응형

 

 

Amazon CloudWatch 커스텀 메트릭 : 공식 문서

PutMetricData

PutMetricDatacustom metrics(사용자의 커스텀 메트릭)을 기록할 때 사용하는 API이다.

이를 통해 애플리케이션에서 특정 성능 지표를 직접 CloudWatch로 전송하여 모니터링할 수 있다.

PutMetricData가 필요한 이유

기본적으로 AWS 서비스는 CloudWatch에 로그 기록을 자동으로 전송한다.

하지만 요건사항에 따라 AWS 서비스에서 지원하지 않는 메트릭을 사용해야 할 경우가 있을 수 있다.

이런 경우 CloudWatch AgentAPI(예: PutMetricData)를 사용해 커스텀 메트릭을 CloudWatch에 전송할 수 있다. 

참고 자료

 


🤔 문제 1

개발자가 Amazon EC2 인스턴스의 여러 대에서 실행되는 멀티 스레드 애플리케이션을 작성했습니다. 운영팀은 시간에 따른 실행 중인 스레드 수를 모니터링하는 그래픽 방법을 요청했습니다. 이 요구 사항을 가장 효율적으로 충족시키는 방법은 무엇입니까?

 

  1. 주기적으로 스레드 수를 AWS X-Ray 세그먼트에 전송한 후, 필요할 때 서비스 그래프를 생성합니다.
  2. 사용자 정의 Amazon CloudWatch 메트릭을 생성하고 현재 스레드 수로 PutMetricData 호출을 주기적으로 수행합니다.
  3. 주기적으로 스레드 수 데이터를 Amazon S3에 기록하고, Amazon Kinesis를 사용하여 데이터를 처리하여 그래프를 생성합니다.
  4. 주기적으로 현재 스레드 수를 테이블에 Amazon DynamoDB에 기록하고, Amazon CloudFront를 사용하여 그래프를 생성합니다.

정답

더보기

정답. 2번
PutMetricData API를 사용하여 스레드 수를 주기적으로 CloudWatch로 전송하면, CloudWatch에서 그래픽으로 시각화할 수 있다. 이 방법은 효율적이고 가장 적합한 방법이다.

1번 오답
X-Ray는 주로 애플리케이션 성능 분석에 사용되며, 스레드 수 모니터링에는 적합하지 않습니다. 또한, X-Ray는 주로 요청의 흐름을 추적하고 성능 문제를 분석하는 데 유용하지만, 스레드 수를 추적하는 데 최적화되지 않음으로 이 방법은 효율적이지 않다.

3번, 4번 오답

(관련 없다)


🤔 문제 2

애플리케이션이 EC2 인스턴스에서 실행되고 있습니다. 개발자는 애플리케이션 메트릭을 Amazon CloudWatch에 저장하려고 합니다. 이 요구 사항을 구현하기 위한 최선의 방법은 무엇입니까?

 

  1. PUT Object API 호출을 사용하여 데이터를 S3 버킷에 전송합니다. 이벤트 알림을 사용하여 Lambda 함수를 호출하여 데이터를 CloudWatch에 게시합니다.
  2. 메트릭 데이터를 Amazon Kinesis 스트림에 PutRecord API 호출을 사용하여 게시합니다. Lambda 함수에 구독하여 데이터를 CloudWatch에 게시합니다.
  3. CloudWatch PutMetricData API 호출을 사용하여 CloudWatch에 사용자 정의 메트릭을 제출합니다. API 호출을 활성화하려면 필요한 자격 증명을 제공합니다.
  4. CloudWatch PutMetricData API 호출을 사용하여 CloudWatch에 사용자 정의 메트릭을 제출합니다. EC2 인스턴스를 시작할 때 API 호출을 활성화하는 데 필요한 IAM 역할을 설정합니다.

정답

더보기

정답. 4번

반응형