AWS MSK Throttle Test

The consumer periodically sends a request to a Kafka broker in order to fetch data from it. The consumer application then receives a number of records in a response, processes them and asks for more in the form of another request.

This test monitors each fetch request raised by the consumer and also identifies the average fetch throttle time taken for each request. Using this test, the administrators can rapidly capture real/probable problem conditions during fetch process and swiftly resolve them, so as to ensure the high availability of the target AWS Managed Service Kafka.

Target of the test : AWS Managed Service Kafka

Agent deploying the test : A remote agent

Outputs of the test : One set of results for the target AWS Managed Service Kafka server.

Configurable parameters for the test
Parameter Description

Test Period

How often should the test be executed.

Host

The IP address of the AWS Managed Service Kafka Broker that is being monitored.

Port

Specify the port number at which the specified HOST listens. By default, this is NULL.

AWS Default Region

This test uses AWS CLI to interact with AWS Managed Service Kafka and pull relevant metrics. To enable the test to connect to AWS, you need to configure the test with the name of the region to which all requests for metrics should be routed, by default. Specify the name of this AWS Default Region, here.

AWS Access Key ID, AWS Secret Access Key and Confirm Password

To monitor AWS Managed Service Kafka, the eG agent has to be configured with the access key and secret key of a user with a valid AWS account. For this purpose, we recommend that you create a special user on the AWS cloud, obtain the access and secret keys of this user, and configure this test with these keys. The procedure for this has been detailed in the Obtaining an Access key and Secret key topic. Make sure you reconfirm the access and secret keys you provide here by retyping it in the corresponding Confirm Password text box.

Timeout Seconds

Specify the maximum duration (in seconds) for which the test will wait for a response from the server. The default is 10 seconds.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Request throttle queue size

Indicates the number of messages in the throttle queue.

Number

 

Request throttle time

Indicates the average request throttle time.

Seconds

 

Fetch throttle byte rate

Indicates the number of throttled bytes per second.

Number

 

Fetch throttle queue size

Indicates the number of messages in the throttle queue.

Number

 

Fetch throttle time

Indicates the average fetch throttle time.

Seconds

A very low value is required for this measure.

Produce throttle byte rate

Indicates the number of throttled bytes per second.

Number

 

Produce throttle queue size

Indicates the number of messages in the throttle queue.

Number

 

Produce throttle time

Indicates the average produce throttle time

Seconds

A very low value is required for this measure.

Request exempt from throttle

Indicates the average time spent in broker network and I/O threads to process requests that are exempt from throttling.

Seconds