USECASE
The aim of this pageđź“ť is to explain the significance of monitoring CloudWatch metrics for Kinesis streams, particularly focusing on GetRecords.Records
and SampleCount
.
Previously, I was only monitoring the volume limits. However, transaction count limits can also become important when adding additional consumers to the stream. After adding a new consumer, I started noticing latencies and a spike in the ReadProvisionedThroughputExceeded
metric.
-
GetRecords.Records
metric counts the number of records retrieved from a shard in a specified time period. -
SampleCount
forGetRecords.Records
indicates the number ofGetRecords
operations (transactions) performed. - Monitoring
SampleCount
helps in tracking the frequency of read transactions. - Kinesis stream limits each shard to five read transactions per second.
- Using
SampleCount
ensures staying within the transaction quota. - Adding a new consumer increases read transactions, making
SampleCount
monitoring crucial. - Monitoring
GetRecords.Bytes
gives insight into the volume of data read. - Balancing
GetRecords.Records
,GetRecords.Bytes
, andSampleCount
provides a comprehensive view of stream usage. - Exceeding transaction limits can lead to throttling or performance issues.
- Regular monitoring helps optimize stream performance and prevent issues.
Top comments (0)