Amazon Kinesis Data Streams is a fully managed, serverless streaming data service that enables real-time collection, processing, and analysis of large volumes of data records. It allows applications to ingest data from multiple sources simultaneously, with support for configurable retention periods, multiple consumer applications, and enhanced fan-out for high-throughput parallel data processing.
Monitoring Amazon Kinesis Data Streams is essential for ensuring high-throughput data pipelines remain healthy and within provisioned capacity limits. Applications Manager's Amazon Kinesis Data Streams monitoring tool provides real-time visibility into stream-level metrics such as incoming traffic, record throughput, iterator age, latency, and PutRecords performance. With proactive alerting and historical trend analysis, the tool helps identify throttling events, consumer lag, and data pipeline bottlenecks before they impact downstream applications.
To learn how to create a new Amazon Kinesis Data Streams monitor, refer here.
Go to the Monitors Category View by clicking the Monitors tab. Click on the Kinesis Data Streams instance available under Amazon in the Cloud Apps section. Displayed below is the Amazon Kinesis Data Streams bulk configuration view distributed into three tabs:
By clicking a monitor from the list, you'll be taken to the Amazon Kinesis Data Streams dashboard which includes the following tabs:
| Parameter | Description |
|---|---|
| STREAM INFORMATION | |
| Stream Status | The current status of the data stream. Possible values: CREATING, DELETING, ACTIVE, UPDATING. |
| Number of Open Shards | The number of open shards in the data stream at the time of polling. |
| Number of Consumers | The number of enhanced fan-out consumers registered with the stream. |
| EXCEEDED PROVISIONED THROUGHPUT | |
| Exceeded Read Throughput | The average number of requests throttled for GetRecords operations for the stream between the poll interval. |
| Exceeded Write Throughput | The average number of requests throttled for PutRecord and PutRecords operations for the stream between the poll interval. |
| ITERATOR AGE | |
| Iterator Age | The peak age of the last GetRecords operation made against all shards in the stream at the time of polling (in ms). |
| LATENCY | |
| GetRecords Latency | The average time taken per GetRecords operation for the stream between the poll interval (in ms). |
| PutRecord Latency | The average time taken per PutRecord operation for the stream between the poll interval (in ms). |
| PutRecords Latency | The average time taken per PutRecords operation for the stream between the poll interval (in ms). |
| I/O THROUGHPUT | |
| GetRecords Data Rate | The total amount of data retrieved per second using GetRecords operations for the stream between the poll interval (in MB/s). |
| PutRecord Data Rate | The total amount of data sent per second using PutRecord operations for the stream between the poll interval (in MB/s). |
| PutRecords Data Rate | The total amount of data sent per second using PutRecords operations for the stream between the poll interval (in MB/s). |
| GetRecords Data | The total amount of data retrieved using GetRecords operations for the stream between the poll interval (in MB). |
| PutRecord Data | The total amount of data written using PutRecord operations for the stream between the poll interval (in MB). |
| PutRecords Data | The total amount of data written using PutRecords operations for the stream between the poll interval (in MB). |
| INCOMING TRAFFIC | |
| Incoming Traffic Rate | The total amount of data successfully sent to the stream per second between the poll interval (in MB/s). |
| Incoming Traffic | The total amount of data successfully sent to the stream between the poll interval (in MB). |
| INCOMING RECORDS | |
| Incoming Records Rate | The total number of records successfully sent to the stream per minute between the poll interval (in records/min). |
| Incoming Records | The total number of records successfully sent to the stream between the poll interval. |
| RECORD TRAFFIC | |
| GetRecords Records Rate | The total number of records retrieved per minute using GetRecords operations for the stream between the poll interval (in records/min). |
| PutRecords Rate | The total number of records sent in PutRecords operations per minute for the stream between the poll interval (in records/min). |
| GetRecords Requests | The total number of records retrieved using GetRecords operations for the stream between the poll interval. |
| PutRecords Requests | The total number of records sent in PutRecords operations for the stream between the poll interval. |
| PUTRECORDS BREAKDOWN | |
| Failed PutRecords | The total number of records that failed due to internal service errors in PutRecords operations for the stream between the poll interval. |
| Throttled PutRecords | The total number of records rejected due to throttling in a PutRecords operation for the stream between the poll interval. |
| Successful PutRecords | The total number of successful records in PutRecords operations for the stream between the poll interval. |
| FAILED PUTRECORDS PERCENTAGE | |
| Failed PutRecords Percentage | The percentage of records that failed due to internal service errors in PutRecords operations for the stream between the poll interval. Calculated as (PutRecords Failed Records / PutRecords Total Records) * 100 (in %). |
| THROTTLED PUTRECORDS PERCENTAGE | |
| Throttled PutRecords Percentage | The percentage of records rejected due to throttling in PutRecords operations for the stream between the poll interval. Calculated as (PutRecords Throttled Records / PutRecords Total Records) * 100 (in %). |
| SUCCESSFUL RECORDS | |
| GetRecords Success Rate | The total number of successful GetRecords operations per minute for the stream between the poll interval (in records/min). |
| PutRecord Success Rate | The total number of successful PutRecord operations per minute for the stream between the poll interval (in records/min). |
| PutRecords Success Rate | The total number of PutRecords requests in which at least one record was successfully written per minute for the stream between the poll interval (in records/min). |
Note: The Consumer Metrics are mapped under Performance Polling and disabled by default. To enable or disable metric collection, or to configure the polling interval, navigate to Settings → Performance Polling. Under the Optimize Data Collection tab, select Amazon Kinesis Data Streams as the Monitor Type, choose Consumer Metrics as the Metric Name, and update the required polling status and interval.
This tab displays the following Top 5 charts for enhanced fan-out consumers registered with the stream:
| Parameter | Description |
|---|---|
| CONSUMERS | |
| Consumer Name | The name of the enhanced fan-out consumer. |
| Consumer Status | The current status of the enhanced fan-out consumer. |
| Creation Time | The date and time when the consumer was created. |
| Subscription Processing Lag | The number of milliseconds the consumer is behind the most recent record in the shard at the time of polling (in ms). |
| Subscription Throttle Rate | The number of times a SubscribeToShard request was throttled for the consumer between the poll interval. |
| Subscription Outgoing Traffic | The total amount of data sent to the consumer via SubscribeToShard events per second between the poll interval (in MB/s). |
| Subscription Outgoing Records | The total number of records sent to the consumer via SubscribeToShard events per minute between the poll interval (in records/min). |
| Subscription Success Rate | The total number of successful SubscribeToShard requests for the consumer between the poll interval. |
| Subscription Successful Delivery | The total number of successful SubscribeToShard event streaming calls for the consumer between the poll interval. |
| Parameter | Description |
|---|---|
| CONFIGURATION | |
| Stream Status | The current status of the data stream. Possible values: CREATING, DELETING, ACTIVE, UPDATING. |
| Stream Capacity Mode | The capacity mode of the data stream. |
| Number of Open Shards | The number of open shards in the data stream. |
| Number of Consumers | The number of enhanced fan-out consumers registered with the stream. |
| Retention Period | The current retention period of the stream (in hrs). |
| Maximum Record Size | The maximum size of a data record written to the stream (in KiB). |
| Creation Time | The date and time when the stream was created. |
| SECURITY CONFIGURATION | |
| Encryption Type | The type of encryption used on the stream. |
| Encryption Key | The ID or ARN of the KMS key used to encrypt the data stream. |
It allows us to track crucial metrics such as response times, resource utilization, error rates, and transaction performance. The real-time monitoring alerts promptly notify us of any issues or anomalies, enabling us to take immediate action.
Reviewer Role: Research and Development