Amazon CloudWatch에서 지표 가져오기 - AWS SDK for C++

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon CloudWatch에서 지표 가져오기

사전 조건

시작하기 전에 AWS SDK for C++ 사용 시작하기를 읽어보시기 바랍니다.

예제 코드를 다운로드하고 코드 예제 시작하기에 설명된 대로 솔루션을 빌드합니다.

예제를 실행하려면 코드가 요청을 수행하는 데 사용하는 사용자 프로필이 AWS에서 적절한 권한(서비스 및 동작에 대한)을 보유하고 있어야 합니다. 자세한 내용은 AWS 자격 증명 제공을 참조하세요.

지표 나열

CloudWatch 지표를 나열하려면 ListMetricsRequest를 생성하고 CloudWatchClient의 ListMetrics 함수를 호출합니다. ListMetricsRequest를 사용하여 반환된 지표를 네임스페이스, 지표 이름 또는 차원을 기준으로 필터링할 수 있습니다.

참고

AWS 서비스에서 게시한 지표 및 측정기준 목록은 Amazon CloudWatch 사용 설명서의 Amazon CloudWatch 지표 및 차원 참조에서 확인할 수 있습니다.

포함 파일

#include <aws/core/Aws.h> #include <aws/monitoring/CloudWatchClient.h> #include <aws/monitoring/model/ListMetricsRequest.h> #include <aws/monitoring/model/ListMetricsResult.h> #include <iomanip> #include <iostream>

코드

Aws::CloudWatch::CloudWatchClient cw; Aws::CloudWatch::Model::ListMetricsRequest request; if (argc > 1) { request.SetMetricName(argv[1]); } if (argc > 2) { request.SetNamespace(argv[2]); } bool done = false; bool header = false; while (!done) { auto outcome = cw.ListMetrics(request); if (!outcome.IsSuccess()) { std::cout << "Failed to list CloudWatch metrics:" << outcome.GetError().GetMessage() << std::endl; break; } if (!header) { std::cout << std::left << std::setw(48) << "MetricName" << std::setw(32) << "Namespace" << "DimensionNameValuePairs" << std::endl; header = true; } const auto &metrics = outcome.GetResult().GetMetrics(); for (const auto &metric : metrics) { std::cout << std::left << std::setw(48) << metric.GetMetricName() << std::setw(32) << metric.GetNamespace(); const auto &dimensions = metric.GetDimensions(); for (auto iter = dimensions.cbegin(); iter != dimensions.cend(); ++iter) { const auto &dimkv = *iter; std::cout << dimkv.GetName() << " = " << dimkv.GetValue(); if (iter + 1 != dimensions.cend()) { std::cout << ", "; } } std::cout << std::endl; } const auto &next_token = outcome.GetResult().GetNextToken(); request.SetNextToken(next_token); done = next_token.empty(); }

해당 GetMetrics 함수를 호출하면 지표가 ListMetricsResult에 반환됩니다. 결과를 페이징할 수 있습니다. 다음 결과 배치를 가져오려면 ListMetricsResult 객체의 GetNextToken 함수 반환 값과 함께 원래 요청 객체에 대해 SetNextToken을 호출한 후 수정된 요청 객체를 ListMetrics의 다른 호출에 다시 전달합니다.

전체 예제를 참조하세요.

추가 정보