Kafka Producer Instances Test

A Kafka client publishes records to the Kafka cluster (broker). The producer is thread safe and it shares a single producer instance across threads that would generally be faster than having multiple instances. This test monitors those producer instances and reports potential contentions, if any.

Target of the test : Apache Kafka Message System

Agent deploying the test : An internal/remote agent

Outputs of the test : One set of results for the target Apache Kafka Message System.

Configurable parameters for the test
Parameter Description

Test period

How often should the test be executed.

Host

The IP address of the target server that is being monitored.

Port

The port number through which the Apache Kafka Message System communicates. The default port is 9092.

Producer Port

The port number through which the producer communicates with the broker.

JMX User, JMX Password, and Confirm Password

These parameters appear only if the Measurement Mode is set to jmx. If JMX requires authentication only (but no security), then ensure that the JMX User and JMX Password parameters are configured with the credentials of a user with read-write access to JMX.

Measurements made by the test
Measurement Description Measurement Unit Interpretation

Average batch size

Indicates the average number of bytes sent per partition per-request.

MB

 

Batch split rate

Indicates the average number of batch splits.

Splits/sec

 

Buffer available data

Indicates the total amount of buffer memory that is not being used (either unallocated or in the free list).

MB

 

Buffer exhausted rate

Indicates the average number of sent record, that are dropped due to buffer exhaustion.

Number

A very low is required for this measure.

Buffer total data

Indicates the maximum amount of buffer memory the client can use (whether or not it is currently used).

MB

 

Buffer pool wait ratio

Indicates the fraction of time an appender waits for space allocation.

Number

 

Average compression rate

Indicates the average compression rate of record batches and it is defined as the average ratio of the compressed batch size over the uncompressed size.

Number/sec

 

Connection close rate

Indicates the closed connections.

Connections/sec

 

Connection count

Indicates the current number of active connections.

Number

A very high value is required for this measure.

Connection creation rate

Indicates the new established connections.

Connections/sec

 

Failed authentication rate

Indicates the connections for failed authentication.

Connections/sec

Ideally, the value of these measures should be zero.

 

Failed reauthentication rate

Indicates the connections for failed re-authentication.

Connections/sec

Average IO time

Indicates the average length of time for I/O per select call.

Seconds

 

Average IO wait time

Indicates the average length of time the I/O thread spent waiting for a socket ready for reads or writes.

Seconds

 

Meta data age

Indicates the age of the current producer metadata being used.

Seconds

 

Waiting threads

Indicates the number of user threads blocked waiting for buffer memory to enqueue their records.

Number