기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon Kinesis Data Streams용 Kinesis Producer Library(KPL)는 사용자를 대신하여 사용자 지정 Amazon CloudWatch 지표를 게시합니다. CloudWatch 콘솔
KPL이 CloudWatch에 업로드한 지표에는 일반 요금이 부과됩니다. 특히 Amazon CloudWatch 사용자 지정 지표 및 Amazon CloudWatch API 요청 요금이 적용됩니다. 자세한 내용은 Amazon CloudWatch 요금
지표, 차원 및 네임스페이스
KPL을 시작할 때 애플리케이션 이름을 지정할 수 있으며, 이 이름은 지표를 업로드할 때 네임스페이스의 일부로 사용됩니다. 이 이름은 선택 사항이며 애플리케이션 이름을 설정하지 않으면 KPL에서 기본값을 제공합니다.
지표에 임의의 다른 측정기준을 추가하도록 KPL을 구성할 수도 있습니다. CloudWatch 지표의 데이터를 세분화하려는 경우 이 방법이 유용합니다. 예를 들어, 호스트 이름을 차원으로 추가하여 플릿에서 고르지 못한 로드 분산을 식별할 수 있습니다. 모든 KPL 구성 설정은 변경할 수 없으므로 KPL 인스턴스가 초기화된 후에는 이 추가 측정기준을 변경할 수 없습니다.
지표 수준 및 세부 수준
다음 두 가지 옵션을 사용하여 CloudWatch에 업로드된 지표 수를 제어할 수 있습니다.
- 지표 수준
-
측정치의 중요성을 나타내는 대략적인 게이지입니다. 모든 측정치에는 수준이 할당됩니다. 수준을 설정하면 해당 값보다 낮은 수준의 지표는 CloudWatch에 전송되지 않습니다. 수준은
NONE
,SUMMARY
및DETAILED
입니다. 기본 설정은DETAILED
, 즉 모든 지표입니다.NONE
은 지표가 전혀 없음을 의미하므로 실제로 해당 수준에 지표가 할당되지 않습니다. - 세부 수준
-
추가 세부 수준에서 동일한 측정치를 내보내는지 여부를 제어합니다. 수준은
GLOBAL
,STREAM
및SHARD
입니다. 기본 설정은 가장 세분화된 측정치를 포함하는SHARD
입니다.SHARD
를 선택하면 스트림 이름과 샤드 ID를 차원으로 하여 측정치를 내보냅니다. 또한 스트림 이름이 없는 측정치와 스트림 이름 차원만으로도 동일한 측정치를 내보냅니다. 특정 지표에 대해 샤드가 2개씩 있는 스트림 2개가 CloudWatch 지표 7개(각 샤드에 1개, 각 스트림에 1개, 전체적으로 1개)를 생성한다는 의미입니다. 서로 다른 세수 수준에서 모두 동일한 통계를 나타냅니다. 다음 다이어그램을 참조하십시오.여러 세부 수준이 계층 구조를 형성하고 시스템의 모든 지표는 지표 이름을 토대로 트리를 형성합니다.
MetricName (GLOBAL): Metric X Metric Y | | ----------------- ------------ | | | | StreamName (STREAM): Stream A Stream B Stream A Stream B | | -------- --------- | | | | ShardID (SHARD): Shard 0 Shard 1 Shard 0 Shard 1
모든 측정치를 샤드 수준에서 사용할 수 있는 것은 아니며 본질적으로 스트림 수준이나 전역 수준에서 사용할 수 있는 측정치도 있습니다. 샤드 수준 지표를 활성화한 경우에도 이 측정치가 샤드 수준에서 생성되지 않습니다(위 다이어그램의
Metric Y
).추가 차원을 지정할 때에 대한 값을 제공해야 합니다
tuple:<DimensionName, DimensionValue, Granularity>
. 사용자 지정 차원이 계층 구조에 삽입되는 위치를 결정하기 위해 세부 수준을 사용합니다.GLOBAL
은 지표 이름 뒤,STREAM
은 스트림 이름 뒤,SHARD
는 샤드 ID 뒤에 추가 차원을 삽입한다는 의미입니다. 여러 추가 차원이 세부 수준별로 제공되면 지정된 순서대로 삽입됩니다.
로컬 액세스 및 Amazon CloudWatch 업로드
현재 KPL 인스턴스의 지표는 로컬에서 실시간으로 사용할 수 있으며 언제든지 KPL을 쿼리하여 가져올 수 있습니다. KPL은 CloudWatch와 마찬가지로 모든 지표의 합계, 평균, 최소값, 최대값 및 개수를 로컬에서 컴퓨팅합니다.
프로그램 시작부터 현재 시점까지 누적된 통계를 가져오거나 지난 N초(N은 1~60 사이의 정수) 동안 롤링 윈도우를 사용하여 통계를 가져올 수 있습니다.
모든 지표를 CloudWatch에 업로드할 수 있습니다. 특히 여러 호스트의 데이터 집계, 모니터링 및 경보에 유용합니다. 로컬에서는 이 기능을 사용할 수 없습니다.
전에 설명한 대로 측정치 수준 및 세부 수준 설정으로 업로드할 측정치를 선택할 수 있습니다. 업로드되지 않은 측정치를 로컬에서 사용할 수 있습니다.
트래픽이 많을 때 초당 수백만 개의 업로드가 이루어지기 때문에 데이터 요소를 개별적으로 업로드하는 것은 적절하지 않습니다. 그래서 KPL은 로컬에서 지표를 1분 버킷으로 집계하고 활성화된 지표별로 분당 1회 CloudWatch에 통계 객체를 업로드합니다.
메트릭 목록
지표 | 설명 |
---|---|
UserRecordsReceived |
넣기 작업을 위해 KPL 코어에 수신된 논리적 사용자 레코드 수입니다. 샤드 수준에서 사용할 수 없습니다. 측정치 수준: Detailed 단위: 수 |
UserRecordsPending |
현재 대기 중인 사용자 레코드 수의 주기적 샘플입니다. 레코드가 현재 버퍼링되고 전송되기를 기다리거나 백엔드 서비스로 전송 및 진행 중인 경우 레코드는 보류 중입니다. 샤드 수준에서 사용할 수 없습니다. KPL은 전용 메서드를 제공하여 고객이 넣기 속도를 관리할 수 있도록 전역 수준에서 이 지표를 검색합니다. 측정치 수준: Detailed 단위: 수 |
UserRecordsPut |
성공적으로 입력된 논리적 사용자 레코드 수입니다. KPL은 이 지표의 실패한 레코드를 계산하지 않습니다. 평균을 통해 성공률을, 개수를 통해 총 시도 수를, 개수와 합계의 차이를 통해 실패 수를 알 수 있습니다. 측정치 수준: Summary 단위: 수 |
UserRecordsDataPut |
성공적으로 입력된 논리적 사용자 레코드의 바이트입니다. 측정치 수준: Detailed 단위: 바이트 |
KinesisRecordsPut |
성공적으로 입력된 Kinesis Data Streams 레코드 수입니다. 각 Kinesis Data Streams 레코드에는 여러 사용자 레코드가 포함될 수 있습니다. KPL은 실패한 레코드에 대해 0을 출력합니다. 평균을 통해 성공률을, 개수를 통해 총 시도 수를, 개수와 합계의 차이를 통해 실패 수를 알 수 있습니다. 측정치 수준: Summary 단위: 수 |
KinesisRecordsDataPut |
Kinesis Data Streams 레코드의 바이트 수입니다. 측정치 수준: Detailed 단위: 바이트 |
ErrorsByCode |
각 오류 코드 유형의 개수입니다. Kinesis Data Streams API 오류는 Kinesis Data Streams 레코드당 한 번 계산됩니다. Kinesis Data Streams 레코드에 있는 여러 사용자 레코드는 여러 번 계산되지 않습니다. 측정치 수준: Summary 단위: 수 |
AllErrors |
Errors by Code(코드별 오류)와 동일한 오류로 트리거되지만 유형을 구별하지 않습니다. 다른 모든 유형의 오류 개수 합계를 수동으로 계산하지 않고도 오류 비율을 전반적으로 모니터링할 수 있어 유용합니다. 측정치 수준: Summary 단위: 수 |
RetriesPerRecord |
사용자 레코드마다 수행한 재시도 수입니다. 레코드가 한 번에 성공하면 0을 내보냅니다. 사용자 레코드가 완료(성공하거나 더 이상 재시도할 수 없는 경우)되면 데이터를 내보냅니다. 레코드 time-to-live가 큰 값인 경우 이 측정치가 상당히 지연될 수 있습니다. 측정치 수준: Detailed 단위: 수 |
BufferingTime |
사용자 레코드가 KPL에 도착했다가 백엔드로 나가는 사이의 시간입니다. 레코드별로 이 정보를 사용자에게 다시 전송하지만 집계된 통계로 사용할 수도 있습니다. 측정치 수준: Summary 단위: 밀리초 |
Request Time |
측정치 수준: Detailed 단위: 밀리초 |
User Records per Kinesis Record |
단일 Kinesis Data Streams 레코드에 집계된 논리적 사용자 레코드 수입니다. 측정치 수준: Detailed 단위: 수 |
Amazon Kinesis Records per
PutRecordsRequest |
단일 측정치 수준: Detailed 단위: 수 |
User Records per
PutRecordsRequest |
측정치 수준: Detailed 단위: 수 |