EnableEnhancedMonitoring
Enables enhanced Kinesis data stream monitoring for shard-level metrics.
Request Syntax
{
"ShardLevelMetrics": [ "string
" ],
"StreamName": "string
"
}
Request Parameters
The request accepts the following data in JSON format.
- ShardLevelMetrics
-
List of shard-level metrics to enable.
The following are the valid shard-level metrics. The value "
ALL
" enables every metric.-
IncomingBytes
-
IncomingRecords
-
OutgoingBytes
-
OutgoingRecords
-
WriteProvisionedThroughputExceeded
-
ReadProvisionedThroughputExceeded
-
IteratorAgeMilliseconds
-
ALL
For more information, see Monitoring the Amazon Kinesis Data Streams Service with Amazon CloudWatch in the Amazon Kinesis Data Streams Developer Guide.
Type: Array of strings
Array Members: Minimum number of 1 item. Maximum number of 7 items.
Valid Values:
IncomingBytes | IncomingRecords | OutgoingBytes | OutgoingRecords | WriteProvisionedThroughputExceeded | ReadProvisionedThroughputExceeded | IteratorAgeMilliseconds | ALL
Required: Yes
-
- StreamName
-
The name of the stream for which to enable enhanced monitoring.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9_.-]+
Required: Yes
Response Syntax
{
"CurrentShardLevelMetrics": [ "string" ],
"DesiredShardLevelMetrics": [ "string" ],
"StreamName": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- CurrentShardLevelMetrics
-
Represents the current state of the metrics that are in the enhanced state before the operation.
Type: Array of strings
Array Members: Minimum number of 1 item. Maximum number of 7 items.
Valid Values:
IncomingBytes | IncomingRecords | OutgoingBytes | OutgoingRecords | WriteProvisionedThroughputExceeded | ReadProvisionedThroughputExceeded | IteratorAgeMilliseconds | ALL
- DesiredShardLevelMetrics
-
Represents the list of all the metrics that would be in the enhanced state after the operation.
Type: Array of strings
Array Members: Minimum number of 1 item. Maximum number of 7 items.
Valid Values:
IncomingBytes | IncomingRecords | OutgoingBytes | OutgoingRecords | WriteProvisionedThroughputExceeded | ReadProvisionedThroughputExceeded | IteratorAgeMilliseconds | ALL
- StreamName
-
The name of the Kinesis data stream.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 128.
Pattern:
[a-zA-Z0-9_.-]+
Errors
For information about the errors that are common to all actions, see Common Errors.
- InvalidArgumentException
-
A specified parameter exceeds its restrictions, is not supported, or can't be used. For more information, see the returned message.
HTTP Status Code: 400
- LimitExceededException
-
The requested resource exceeds the maximum number allowed, or the number of concurrent stream requests exceeds the maximum number allowed.
HTTP Status Code: 400
- ResourceInUseException
-
The resource is not available for this operation. For successful operation, the resource must be in the
ACTIVE
state.HTTP Status Code: 400
- ResourceNotFoundException
-
The requested resource could not be found. The stream might not be specified correctly.
HTTP Status Code: 400
Examples
To enable enhanced monitoring
The following JSON example enables enhanced monitoring for
IncomingBytes
and OutgoingRecords
shard level
metrics.
Sample Request
POST / HTTP/1.1
Host: kinesis.<region>.<domain>
Content-Length: <PayloadSizeBytes>
User-Agent: <UserAgentString>
Content-Type: application/x-amz-json-1.1
Authorization: <AuthParams>
Connection: Keep-Alive
X-Amz-Date: <Date>
X-Amz-Target: Kinesis_20131202.EnableEnhancedMonitoring
{
"ShardLevelMetrics": [
"IncomingBytes", "OutgoingRecords"
],
"StreamName": "exampleStreamName"
}
Sample Response
HTTP/1.1 200 OK
x-amzn-RequestId: <RequestId>
Content-Type: application/x-amz-json-1.1
Content-Length: <PayloadSizeBytes>
Date: <Date>
{
"StreamName": "exampleStreamName",
"CurrentShardLevelMetrics": [],
"DesiredShardLevelMetrics": [
"IncomingBytes",
"OutgoingRecords"
]
}
See Also
For more information about using this API in one of the language-specific Amazon SDKs, see the following: