기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
지표 쿼리 옵션을 사용하여 CloudWatch 지표 인사이트 데이터 쿼리
참고
Amazon CloudWatch 메트릭스 인사이트는 미리 보기 중입니다. CloudWatch 메트릭 인사이트 기능은 누구에게나 열려 AWS 계정있습니다. 기능은 변경될 수 있습니다.
CloudWatch 지표 쿼리 편집기에서 metric
query
모드를 선택하여 지표 인사이트 데이터를 쿼리할 수 있습니다.
CloudWatch Metrics Insights는 메트릭을 대규모로 쿼리하는 데 사용할 수 있는 강력한 고성능 SQL 쿼리 엔진입니다. 모든 CloudWatch 지표의 추세와 패턴을 실시간으로 식별하는 데 사용할 수 있는 빠르고 유연한 SQL 기반 쿼리 엔진입니다. 의 SQL 방언을 사용합니다. Metrics Insights 쿼리 구문에 대한 자세한 내용은 을 참조하십시오쿼리 구문 및 키워드.
쿼리 구문 및 키워드
CloudWatch 메트릭 인사이트는 의 SQL 방언을 사용합니다. 다음 예제는 쿼리 구문을 보여줍니다.
SELECT
FUNCTION
(metricName
) FROMnamespace
| [ SCHEMA(namespace
[, labelKey [, ...] ]) ] [ WHERElabelKey
OPERATOR labelValue [AND|OR|([...])*] [, ...] ] [ GROUP BYlabelKey
[, ...]] [ ORDER BYFUNCTION
() [DESC | ASC] ] [ LIMITnumber
]
키워드는 대소문자를 구분하지 않지만 식별자는 대소문자를 구분합니다. 식별자에는 지표, 네임스페이스 및 차원의 이름이 포함됩니다.
다음 표에는 쿼리 키워드와 해당 설명이 나와 있습니다.
키워드 | 설명 |
---|---|
FUNCTION
|
필수 사항입니다. 사용할 집계 함수를 지정하고 쿼리할 지표의 이름도 지정합니다. 유효한 값은 AVG , COUNT , MAX , MIN 및 SUM 입니다. |
MetricName
|
필수 사항입니다. 예: CPUUtilization . |
FROM
|
필수 사항입니다. 지표의 소스을 지정합니다. 쿼리할 메트릭이 포함된 메트릭 네임스페이스나 SCHEMA 테이블 함수를 지정할 수 있습니다. 일부 네임스페이스의 예는 및 입니다. AWS/EC2 AWS/Lambda |
SCHEMA
|
(선택 사항) 정확히 일치하는 지표 또는 일치하지 않는 지표만 표시하도록 쿼리 결과를 필터링합니다. |
WHERE
|
(선택 사항) 결과를 필터링하여 지정된 표현식과 일치하는 지표만 표시합니다. 예: WHERE InstanceType !=
'c3.4xlarge' . |
GROUP BY
|
(선택 사항) 쿼리 결과를 여러 시계열로 그룹화합니다. 예: GROUP BY
ServiceName . |
ORDER BY
|
(선택 사항) 반환할 시계열 순서를 지정합니다. 옵션은 ASC 및 DESC 입니다. |
LIMIT
|
(선택 사항) 반환할 시계열 수를 제한합니다. |
다음은 몇 가지 예시입니다.
-
SELECT AVG(CPUUtilization) FROM "AWS/EC2"
CPUUtilization
측정기준을 무시하고AWS/EC2
네임스페이스의 모든 측정치를 일치시키고 집계된 단일 시계열을 반환합니다. -
SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2")
차원이 정의되지 않은
AWS/EC2
네임스페이스의CPUUtilization
지표만 일치시킵니다. -
SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2", InstanceId)
정확히 하나의 측정기준 () 을 CloudWatch 가진 보고된
CPUUtilization
지표만 매칭합니다.InstanceId
-
SELECT SUM(RequestCount) FROM SCHEMA("AWS/ApplicationELB", LoadBalancer, AvailabilityZone)
정확히 두 개의 측정기준 및 을 사용하여 CloudWatch 보고된
RequestCount
지표만AWS/ApplicationELB
일치시킵니다.LoadBalancer
AvailabilityZone
레이블 값은 작은따옴표로 묶어야 합니다.
이스케이프 문자
쿼리에서 레이블 값은 항상 작은따옴표로 묶어야 합니다. 예: SELECT
MAX(CPUUtilization) FROM "AWS/EC2" WHERE
AutoScalingGroupName = 'my-production-fleet'
.
문자, 숫자, 밑줄 (_
) 이외의 문자를 포함하는 메트릭 네임스페이스, 메트릭 이름 및 레이블 키는 큰따옴표로 묶어야 합니다. 예: SELECT MAX("My.Metric")
. 둘 중 하나에 큰따옴표 자체 (예:Bytes"Input"
) 가 포함된 경우에는 에서와 같이 큰따옴표를 백슬래시로 넘겨야 합니다. SELECT
AVG("Bytes\"Input\"")
지표 네임스페이스, 지표 이름 또는 레이블 키에 Metrics Insights의 예약된 키워드 단어가 포함되어 있는 경우 이러한 단어도 큰따옴표로 묶어야 합니다. 예를 들어 LIMIT
으로 이름 붙인 지표가 있는 경우 SELECT
AVG("LIMIT")
를 사용합니다. 예약어가 포함되어 있지 않더라도 네임스페이스, 지표 이름 또는 레이블을 큰따옴표로 묶는 것도 유효합니다.
빌더 모드 및 코드 모드
Builder
모드 또는 Code
모드에서 쿼리를 생성할 수 있습니다.
Builder
모드에서 쿼리를 만들려면
-
위 표의 정보를 사용하여 메트릭 네임스페이스, 메트릭 이름, 필터, 그룹 및 주문 옵션을 찾아 선택합니다.
-
이러한 각 옵션에 대해 가능한 옵션 목록에서 선택하십시오.
Code
모드에서 쿼리를 만들려면
-
코드 편집기에서 쿼리를 작성합니다.
-
쿼리를 실행하려면 코드 편집기에서 쿼리 실행을 선택합니다.
builder
모드에서 쿼리를 만들려면:
-
위 표의 정보를 사용하여 메트릭 네임스페이스, 메트릭 이름, 필터, 그룹 및 주문 옵션을 찾아 선택합니다.
-
이러한 각 옵션에 대해 가능한 옵션 목록에서 선택하십시오.
Grafana는 선택에 따라 자동으로 쿼리를 구성합니다SQL.
모드에서 쿼리를 만들려면: code
-
코드 편집기에서 쿼리를 작성합니다.
-
쿼리를 실행하려면 코드 편집기에서 쿼리 실행을 선택합니다.
코드 편집기에는 키워드, 집계, 네임스페이스, 지표, 레이블 및 레이블 값에 대한 제안을 제공하는 자동 완성 기능이 내장되어 있습니다. 공백, 쉼표 또는 달러 기호를 입력하면 제안이 표시됩니다. 키보드 조합을 CTRL+Space
사용할 수도 있습니다.
코드 편집기는 쿼리를 자동 완성할 수 있습니다. 하지만 코드 편집기에서 템플릿 변수를 사용하면 자동 완성에 방해가 될 수 있습니다.
CloudWatch 메트릭 인사이트 예제
참고
CloudWatch 메트릭 인사이트는 공개 미리 보기 상태입니다. 미리보기는 모든 AWS 계정에 공개되며 액세스를 요청하지 않아도 됩니다. 일반 출시를 발표하기 전에 기능이 추가 또는 변경될 수 있습니다.
이 섹션에는 쿼리 편집기에서 직접 복사하여 사용하거나 복사 및 수정할 수 있는 유용한 CloudWatch Metrics Insights 쿼리의 예가 나와 있습니다. 이러한 예제 중 일부는 콘솔에서 이미 사용할 수 있으며 지표(Metrics) 보기의 쿼리 추가(Add query)를 선택하여 액세스할 수 있습니다.
EC2예제
인스턴스별 CPU 사용률 지표 보기
SELECT AVG(CPUUtilization) FROM "AWS/EC2" GROUP BY InstanceId
전체 플릿의 평균 CPU 사용률 보기
SELECT AVG(CPUUtilization) FROM SCHEMA("AWS/EC2", InstanceId)
평균 CPU 사용률이 가장 높은 인스턴스 10개 보기
SELECT MAX(CPUUtilization) FROM "AWS/EC2" GROUP BY InstanceId LIMIT 10
CPU사용률이 가장 높은 10개 인스턴스를 최대값순으로 내림차순으로 보기
SELECT AVG(CPUUtilization) FROM "AWS/EC2" GROUP BY InstanceId ORDER BY MAX() DESC LIMIT 10
이 경우 CloudWatch 에이전트는 애플리케이션당 하나의 CPUUtilization 지표를 수집하고 있습니다. 이 쿼리는 특정 애플리케이션 이름에 대해 해당 지표의 평균을 필터링합니다.
SELECT AVG(CPUUtilization) FROM "AWS/CWAgent" WHERE ApplicationName = 'eCommerce' SELECT AVG(ConcurrentExecutions) FROM "AWS/Lambda"
상위 10개 Lambda 함수의 평균 실행 시간을 최대값 순으로 내림차순으로 보기
SELECT AVG(Duration) FROM "AWS/Lambda" GROUP BY FunctionName ORDER BY MAX() DESC LIMIT 10
Lambda의 최대, 평균, 최소 실행 시간 보기
SELECT MAX(Duration) FROM "AWS/Lambda"
Application Load Balancer 예제
측정기준이 다음과 같은 측정치를 확인합니다. LoadBalancerAvailabilityZone
SELECT SUM(RequestCount) FROM SCHEMA("AWS/ApplicationELB", LoadBalancer, AvailabilityZone)
활성 동시 연결 TCP 수가 포함된 지표 보기
SELECT AVG(ActiveConnectionCount) FROM "AWS/ApplicationELB"
아마존 EBS 예제
볼륨당 상위 10개 평균 쓰기 바이트 수를 내림차순으로 보기
SELECT AVG(VolumeWriteBytes) FROM "AWS/EBS" GROUP BY VolumeId ORDER BY MAX() DESC LIMIT 10
평균 Amazon EBS 볼륨 쓰기 시간 보기
SELECT AVG(VolumeTotalWriteTime) FROM "AWS/EBS"
평균 Amazon EBS 볼륨 유휴 시간 보기
SELECT AVG(VolumeIdleTime) FROM "AWS/EBS" View average burst balance per volume SELECT AVG(BurstBalance) FROM "AWS/EBS" GROUP BY VolumeId View average read bytes across Amazon EBS volumes SELECT AVG(VolumeReadBytes) FROM "AWS/EBS"
Amazon EBS 볼륨의 평균 쓰기 바이트 수 보기
SELECT AVG(VolumeWriteBytes) FROM "AWS/EBS"
Amazon Simple Storage Service 예제
버킷 이름별 평균 지연 시간 그룹 보기
SELECT AVG(TotalRequestLatency) FROM "AWS/S3" GROUP BY BucketName
모든 Amazon S3 버킷의 버킷당 평균 객체 수 보기
SELECT AVG(NumberOfObjects) FROM "AWS/S3" GROUP BY BucketName
Amazon Simple Notification Service 예제
A mazon-simple-notificaation-service - 예제
SELECT AVG(NumberOfMessagesPublished) FROM "AWS/SNS"
각 주제 이름에 대한 평균 실패 메시지 수 보기
SELECT AVG(NumberOfNotificationsFailed) FROM "AWS/SNS" GROUP BY TopicName
AWS API사용 예제
계정 내 통화 AWS APIs 횟수별 상위 20위 보기
SELECT COUNT(CallCount) FROM "AWS/Usage" WHERE "Type" = 'API' GROUP BY "Service", "Resource" ORDER BY SUM() DESC LIMIT 20
CloudWatch 메트릭 인사이트 한도
CloudWatch 메트릭 인사이트에는 현재 다음과 같은 제한이 있습니다.
가장 최근 3시간 분량의 데이터만 쿼리할 수 있습니다.
단일 쿼리는 10,000개 이하의 지표를 처리할 수 있습니다. 즉
SELECT
,,FROM
, 및WHERE
절이 10,000개 이상의 지표와 일치하는 경우 검색된 이러한 지표 중 처음 10,000개만 쿼리에 의해 처리됩니다.단일 쿼리는 500개 이하의 시계열을 반환할 수 있습니다. 즉, 쿼리가 500개 이상의 지표를 처리하는 경우 모든 지표가 쿼리 결과에 반환되지는 않습니다. 절을 사용하면 처리 중인 모든 지표가 정렬되고 해당
ORDER BY
조항에 따라 최고값 또는 최저값을 가진 500개가ORDER BY
반환됩니다.ORDER BY
절을 포함하지 않으면 일치하는 지표 500개가 반환되는지 제어할 수 없습니다.각
GetMetricData
작업에는 쿼리가 하나만 있을 수 있지만 대시보드에는 각각 쿼리가 포함된 위젯이 여러 개 있을 수 있습니다.