CloudWatch Metrics from the Kinesis Producer Library
Last updated
Last updated
Kinesis Producer Library는 Apache Flink용 Kinesis Data Analytics와 같은 애플리케이션에서 실행되는 애플리케이션과 별개로 자체 지표를 생성합니다. 이러한 지표는 Amazon CloudWatch에 게시되고 Kinesis Producer Library Processes가 실행될 때 고유한 형태로 제공됩니다.
왼쪽 패널 Metrics 탭 아래 있는 All Metrics를 선택합니다.
사용자 지정 네임스페이스에 있는 KinesisProducerLibrary를 선택합니다. 지표가 속할 네임스페이스는 KinesisProducerConfiguration를 통해서 수정 가능합니다.
StreamName을 선택해서 각 Kinesis Data Stream 별로 구분된 CloudWatch 지표를 확인합니다.
KinesisProducerConfiguration
에서 MetricsGranularity
또는 MetricsLevel
매개변수를 설정해서 KPL에서 CloudWatch로 수집되는 지표 갯수를 지정할수 있습니다.
MetricsLevel
매개변수에는 아래와 같은 값을 지정할수 있습니다.
none
summary
detailed (기본값, 모든 지표)
MetricsGranularity
매개변수에는 아래와 같은 값을 지정할수 있습니다.
global
stream
shard (기본값, 가장 세분화된 수준)
MetricsGranularity
매개변수 값이 shard
인 경우 ShardId
로 구분된 지표를 확인할수 있고, stream
인 경우 스트림 수준의 지표를 확인할수 있습니다. 모든 지표가 스트림 또는 샤드 수준에서 제공되지 않습니다.
KPL에서 제공하는 모든 지표 목록 및 전송, 대기 혹은 수신된 레코드 갯수등을 포함하는 상세한 수준의 UserRecords
관련 지표들에 대한 정보는 해당 문서에서 확인할 수 있습니다. KPL은 Kinesis 레코드(집계된 사용자 레코드) 및 오류 코드에 대한 지표도 생성합니다.
운영 환경에서의 Kinesis Producer의 성능을 평가하고자 한다면
UserRecordsPending
BufferingTime
RetriesPerRecord
지표를 통해서 사용자 레코드가 Kinesis Data Stream으로 전송되기 전에 KPL에서 얼마나 길게 대기하는지 확인하고 해당 지표들의 값들이 높다면 Kinesis Data Stream을 확장해야 합니다.
추가로 ProvisionedThroughputExceededException
지표를 통헤서 Kinesis Data Stream에 Throttling이 발생하고 있는지 확인 할수 있습니다.
위에서 명시된 지표 또는 여타 다른 지표들을 지속적으로 모니터링해서 Kinesis Data Stream이 원활한 성능을 유지하는지 확인할 것을 권장합니다.