GetLabels
GetLabels 작업은 지표 저장소에 있는 레이블 이름을 반환하거나 특정 레이블 이름의 값을 반환합니다.
- 유효한 HTTP 동사
-
/api/v1/labels의 경우GET,POST입니다.GET(/api/v1/label/일 때)label_name/values - 유효한 URI
-
/api/v1/labels- 레이블 이름 목록을 반환합니다./api/v1/label/- 지정된 레이블에서 값 목록을 반환합니다.label_name/values
전체 요청 URL은 AWS 리전의 CloudWatch 모니터링 호스트를 https://monitoring.와 같은 작업 경로와 결합합니다. 엔드포인트, 서명, 필수 IAM 권한에 대한 자세한 정보는 PromQL 쿼리 섹션을 참조하세요.AWS Region.amazonaws.com/api/v1/labels
URL 쿼리 파라미터
다음 파라미터는 GET 요청의 경우 URL 쿼리 문자열로, POST 요청의 경우 양식 인코딩 본문 필드로 전달됩니다.
| 파라미터 | 적용 대상 | 설명 |
|---|---|---|
|
둘 다 |
선택 사항. 결과를 계산할 때 고려할 시리즈를 제한하는 시리즈 선택기입니다. 선택기는 정확히 일치( |
|
둘 다 |
선택 사항. RFC 3339 타임스탬프 또는 Unix 타임스탬프로 고려할 시간 범위의 시작입니다. |
|
둘 다 |
선택 사항. RFC 3339 타임스탬프 또는 Unix 타임스탬프로 고려할 시간 범위의 종료입니다. |
|
둘 다 |
선택 사항. 반환할 최대 고유 레이블 수( |
필수 IAM 권한
두 경로 중 하나에서 GetLabels를 호출하려면 호출 ID에 다음 IAM 작업이 있어야 합니다.
cloudwatch:ListMetrics
모든 PromQL 작업에 대한 전체 IAM 작업 매핑은 PromQL에 대한 IAM 권한 섹션을 참조하세요.
결과 제한
단일 /api/v1/labels 또는 /api/v1/label/ 응답은 최대 10,000개의 레이블을 반환할 수 있습니다. 더 적은 결과를 요청하려면 값(label_name/values1~10000)이 있는 limit 파라미터를 전달합니다. limit를 지정하지 않으면 CloudWatch는 최대 수까지 반환합니다.
일치하는 레이블이 한도를 초과하면 응답이 잘리고 메시지가 표준 Prometheus warnings 필드에 포함됩니다. HTTP 상태 코드는 200으로 유지됩니다.
TPS, 동시성 및 24시간 스캔 기간을 포함한 PromQL 제한의 전체 목록은 PromQL 한도 및 제한 사항 섹션을 참조하세요.
샘플 요청
POST 요청과 빈 본문이 있는 모든 레이블 이름 나열:
POST /api/v1/labels HTTP/1.1 Host: monitoring.us-east-1.amazonaws.com Content-Type: application/x-www-form-urlencoded Content-Length: 0 Authorization: AUTHPARAMS X-Amz-Date: 20260605T193725Z User-Agent: awscurl/0.36
awscurl과 동일한 호출:
awscurl --service monitoring --region us-east-1 \ -X POST 'https://monitoring.us-east-1.amazonaws.com/api/v1/labels' \ -H 'Content-Type: application/x-www-form-urlencoded'
선택기와 일치하는 레이블 이름을 나열합니다. 선택기 및 시간 범위는 요청 본문에서 양식으로 인코딩된 필드로 전달됩니다.
awscurl --service monitoring --region us-east-1 \ -X POST 'https://monitoring.us-east-1.amazonaws.com/api/v1/labels' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'match[]={"http.server.active_requests","@aws.region"=~"us-.*"}&start=1780662000&end=1780665600'
@resource.service.name 레이블의 값을 나열합니다. 레이블 이름은 URL 경로의 일부이며 백분율로 인코딩됩니다(@ → %40). 이 경로는 GET만 지원합니다.
GET /api/v1/label/%40resource.service.name/values HTTP/1.1 Host: monitoring.us-east-1.amazonaws.com Authorization: AUTHPARAMS X-Amz-Date: 20260605T193725Z User-Agent: awscurl/0.36
awscurl과 동일한 호출:
awscurl --service monitoring --region us-east-1 \ 'https://monitoring.us-east-1.amazonaws.com/api/v1/label/@resource.service.name/values'
샘플 응답
성공적인 응답은 표준 Prometheus JSON 봉투를 사용합니다. data 필드는 문자열의 배열입니다.
/api/v1/labels에 대한 응답:
HTTP/1.1 200 OK Content-Type: application/json { "status": "success", "data": [ "__name__", "@aws.account", "@aws.region", "@resource.service.name", "@resource.cloud.region", "InstanceId" ] }
/api/v1/label/에 대한 응답:label_name/values
HTTP/1.1 200 OK Content-Type: application/json { "status": "success", "data": [ "myservice", "checkout-api", "billing-worker" ] }