<ul class="config-list">
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="key.deserializer"></a>
   <a href="#key.deserializer">key.deserializer</a>
</h4>
<p>Deserializer class for key that implements the <code>org.apache.kafka.common.serialization.Deserializer</code> interface.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>class</td></tr>
<tr><th>Default:</th><td></td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="value.deserializer"></a>
   <a href="#value.deserializer">value.deserializer</a>
</h4>
<p>Deserializer class for value that implements the <code>org.apache.kafka.common.serialization.Deserializer</code> interface.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>class</td></tr>
<tr><th>Default:</th><td></td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="bootstrap.servers"></a>
   <a href="#bootstrap.servers">bootstrap.servers</a>
</h4>
<p>A list of host/port pairs to use for establishing the initial connection to the Kafka cluster. The client will make use of all servers irrespective of which servers are specified here for bootstrapping&mdash;this list only impacts the initial hosts used to discover the full set of servers. This list should be in the form <code>host1:port1,host2:port2,...</code>. Since these servers are just used for the initial connection to discover the full cluster membership (which may change dynamically), this list need not contain the full set of servers (you may want more than one, though, in case a server is down).</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>list</td></tr>
<tr><th>Default:</th><td>""</td></tr>
<tr><th>Valid Values:</th><td>non-null string</td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="fetch.min.bytes"></a>
   <a href="#fetch.min.bytes">fetch.min.bytes</a>
</h4>
<p>The minimum amount of data the server should return for a fetch request. If insufficient data is available the request will wait for that much data to accumulate before answering the request. The default setting of 1 byte means that fetch requests are answered as soon as a single byte of data is available or the fetch request times out waiting for data to arrive. Setting this to something greater than 1 will cause the server to wait for larger amounts of data to accumulate which can improve server throughput a bit at the cost of some additional latency.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>1</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="group.id"></a>
   <a href="#group.id">group.id</a>
</h4>
<p>A unique string that identifies the consumer group this consumer belongs to. This property is required if the consumer uses either the group management functionality by using <code>subscribe(topic)</code> or the Kafka-based offset management strategy.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="heartbeat.interval.ms"></a>
   <a href="#heartbeat.interval.ms">heartbeat.interval.ms</a>
</h4>
<p>The expected time between heartbeats to the consumer coordinator when using Kafka's group management facilities. Heartbeats are used to ensure that the consumer's session stays active and to facilitate rebalancing when new consumers join or leave the group. The value must be set lower than <code>session.timeout.ms</code>, but typically should be set no higher than 1/3 of that value. It can be adjusted even lower to control the expected time for normal rebalances.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>3000</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="max.partition.fetch.bytes"></a>
   <a href="#max.partition.fetch.bytes">max.partition.fetch.bytes</a>
</h4>
<p>The maximum amount of data per-partition the server will return. Records are fetched in batches by the consumer. If the first record batch in the first non-empty partition of the fetch is larger than this limit, the batch will still be returned to ensure that the consumer can make progress. The maximum record batch size accepted by the broker is defined via <code>message.max.bytes</code> (broker config) or <code>max.message.bytes</code> (topic config). See fetch.max.bytes for limiting the consumer request size.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>1048576</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="session.timeout.ms"></a>
   <a href="#session.timeout.ms">session.timeout.ms</a>
</h4>
<p>The timeout used to detect client failures when using Kafka's group management facility. The client sends periodic heartbeats to indicate its liveness to the broker. If no heartbeats are received by the broker before the expiration of this session timeout, then the broker will remove this client from the group and initiate a rebalance. Note that the value must be in the allowable range as configured in the broker configuration by <code>group.min.session.timeout.ms</code> and <code>group.max.session.timeout.ms</code>.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>10000</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.key.password"></a>
   <a href="#ssl.key.password">ssl.key.password</a>
</h4>
<p>The password of the private key in the key store file. This is optional for client.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>password</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.keystore.location"></a>
   <a href="#ssl.keystore.location">ssl.keystore.location</a>
</h4>
<p>The location of the key store file. This is optional for client and can be used for two-way authentication for client.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.keystore.password"></a>
   <a href="#ssl.keystore.password">ssl.keystore.password</a>
</h4>
<p>The store password for the key store file. This is optional for client and only needed if ssl.keystore.location is configured. </p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>password</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.truststore.location"></a>
   <a href="#ssl.truststore.location">ssl.truststore.location</a>
</h4>
<p>The location of the trust store file. </p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.truststore.password"></a>
   <a href="#ssl.truststore.password">ssl.truststore.password</a>
</h4>
<p>The password for the trust store file. If a password is not set access to the truststore is still available, but integrity checking is disabled.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>password</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>high</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="allow.auto.create.topics"></a>
   <a href="#allow.auto.create.topics">allow.auto.create.topics</a>
</h4>
<p>Allow automatic topic creation on the broker when subscribing to or assigning a topic. A topic being subscribed to will be automatically created only if the broker allows for it using `auto.create.topics.enable` broker configuration. This configuration must be set to `false` when using brokers older than 0.11.0</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>boolean</td></tr>
<tr><th>Default:</th><td>true</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="auto.offset.reset"></a>
   <a href="#auto.offset.reset">auto.offset.reset</a>
</h4>
<p>What to do when there is no initial offset in Kafka or if the current offset does not exist any more on the server (e.g. because that data has been deleted): <ul><li>earliest: automatically reset the offset to the earliest offset<li>latest: automatically reset the offset to the latest offset</li><li>none: throw exception to the consumer if no previous offset is found for the consumer's group</li><li>anything else: throw exception to the consumer.</li></ul></p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>latest</td></tr>
<tr><th>Valid Values:</th><td>[latest, earliest, none]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="client.dns.lookup"></a>
   <a href="#client.dns.lookup">client.dns.lookup</a>
</h4>
<p>Controls how the client uses DNS lookups. If set to <code>use_all_dns_ips</code> then, when the lookup returns multiple IP addresses for a hostname, they will all be attempted to connect to before failing the connection. Applies to both bootstrap and advertised servers. If the value is <code>resolve_canonical_bootstrap_servers_only</code> each entry will be resolved and expanded into a list of canonical names.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>default</td></tr>
<tr><th>Valid Values:</th><td>[default, use_all_dns_ips, resolve_canonical_bootstrap_servers_only]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="connections.max.idle.ms"></a>
   <a href="#connections.max.idle.ms">connections.max.idle.ms</a>
</h4>
<p>Close idle connections after the number of milliseconds specified by this config.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>540000</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="default.api.timeout.ms"></a>
   <a href="#default.api.timeout.ms">default.api.timeout.ms</a>
</h4>
<p>Specifies the timeout (in milliseconds) for client APIs. This configuration is used as the default timeout for all client operations that do not specify a <code>timeout</code> parameter.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>60000</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="enable.auto.commit"></a>
   <a href="#enable.auto.commit">enable.auto.commit</a>
</h4>
<p>If true the consumer's offset will be periodically committed in the background.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>boolean</td></tr>
<tr><th>Default:</th><td>true</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="exclude.internal.topics"></a>
   <a href="#exclude.internal.topics">exclude.internal.topics</a>
</h4>
<p>Whether internal topics matching a subscribed pattern should be excluded from the subscription. It is always possible to explicitly subscribe to an internal topic.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>boolean</td></tr>
<tr><th>Default:</th><td>true</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="fetch.max.bytes"></a>
   <a href="#fetch.max.bytes">fetch.max.bytes</a>
</h4>
<p>The maximum amount of data the server should return for a fetch request. Records are fetched in batches by the consumer, and if the first record batch in the first non-empty partition of the fetch is larger than this value, the record batch will still be returned to ensure that the consumer can make progress. As such, this is not a absolute maximum. The maximum record batch size accepted by the broker is defined via <code>message.max.bytes</code> (broker config) or <code>max.message.bytes</code> (topic config). Note that the consumer performs multiple fetches in parallel.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>52428800</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="group.instance.id"></a>
   <a href="#group.instance.id">group.instance.id</a>
</h4>
<p>A unique identifier of the consumer instance provided by the end user. Only non-empty strings are permitted. If set, the consumer is treated as a static member, which means that only one instance with this ID is allowed in the consumer group at any time. This can be used in combination with a larger session timeout to avoid group rebalances caused by transient unavailability (e.g. process restarts). If not set, the consumer will join the group as a dynamic member, which is the traditional behavior.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="isolation.level"></a>
   <a href="#isolation.level">isolation.level</a>
</h4>
<p>Controls how to read messages written transactionally. If set to <code>read_committed</code>, consumer.poll() will only return transactional messages which have been committed. If set to <code>read_uncommitted</code>' (the default), consumer.poll() will return all messages, even transactional messages which have been aborted. Non-transactional messages will be returned unconditionally in either mode. <p>Messages will always be returned in offset order. Hence, in  <code>read_committed</code> mode, consumer.poll() will only return messages up to the last stable offset (LSO), which is the one less than the offset of the first open transaction. In particular any messages appearing after messages belonging to ongoing transactions will be withheld until the relevant transaction has been completed. As a result, <code>read_committed</code> consumers will not be able to read up to the high watermark when there are in flight transactions.</p><p> Further, when in <code>read_committed</code> the seekToEnd method will return the LSO</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>read_uncommitted</td></tr>
<tr><th>Valid Values:</th><td>[read_committed, read_uncommitted]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="max.poll.interval.ms"></a>
   <a href="#max.poll.interval.ms">max.poll.interval.ms</a>
</h4>
<p>The maximum delay between invocations of poll() when using consumer group management. This places an upper bound on the amount of time that the consumer can be idle before fetching more records. If poll() is not called before expiration of this timeout, then the consumer is considered failed and the group will rebalance in order to reassign the partitions to another member. For consumers using a non-null <code>group.instance.id</code> which reach this timeout, partitions will not be immediately reassigned. Instead, the consumer will stop sending heartbeats and partitions will be reassigned after expiration of <code>session.timeout.ms</code>. This mirrors the behavior of a static consumer which has shutdown.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>300000</td></tr>
<tr><th>Valid Values:</th><td>[1,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="max.poll.records"></a>
   <a href="#max.poll.records">max.poll.records</a>
</h4>
<p>The maximum number of records returned in a single call to poll().</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>500</td></tr>
<tr><th>Valid Values:</th><td>[1,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="partition.assignment.strategy"></a>
   <a href="#partition.assignment.strategy">partition.assignment.strategy</a>
</h4>
<p>A list of class names or class types, ordered by preference, of supported assignors responsible for the partition assignment strategy that the client will use to distribute partition ownership amongst consumer instances when group management is used. Implementing the <code>org.apache.kafka.clients.consumer.ConsumerPartitionAssignor</code> interface allows you to plug in a custom assignment strategy.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>list</td></tr>
<tr><th>Default:</th><td>class org.apache.kafka.clients.consumer.RangeAssignor</td></tr>
<tr><th>Valid Values:</th><td>non-null string</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="receive.buffer.bytes"></a>
   <a href="#receive.buffer.bytes">receive.buffer.bytes</a>
</h4>
<p>The size of the TCP receive buffer (SO_RCVBUF) to use when reading data. If the value is -1, the OS default will be used.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>65536</td></tr>
<tr><th>Valid Values:</th><td>[-1,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="request.timeout.ms"></a>
   <a href="#request.timeout.ms">request.timeout.ms</a>
</h4>
<p>The configuration controls the maximum amount of time the client will wait for the response of a request. If the response is not received before the timeout elapses the client will resend the request if necessary or fail the request if retries are exhausted.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>30000</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.client.callback.handler.class"></a>
   <a href="#sasl.client.callback.handler.class">sasl.client.callback.handler.class</a>
</h4>
<p>The fully qualified name of a SASL client callback handler class that implements the AuthenticateCallbackHandler interface.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>class</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.jaas.config"></a>
   <a href="#sasl.jaas.config">sasl.jaas.config</a>
</h4>
<p>JAAS login context parameters for SASL connections in the format used by JAAS configuration files. JAAS configuration file format is described <a href="http://docs.oracle.com/javase/8/docs/technotes/guides/security/jgss/tutorials/LoginConfigFile.html">here</a>. The format for the value is: '<code>loginModuleClass controlFlag (optionName=optionValue)*;</code>'. For brokers, the config must be prefixed with listener prefix and SASL mechanism name in lower-case. For example, listener.name.sasl_ssl.scram-sha-256.sasl.jaas.config=com.example.ScramLoginModule required;</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>password</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.kerberos.service.name"></a>
   <a href="#sasl.kerberos.service.name">sasl.kerberos.service.name</a>
</h4>
<p>The Kerberos principal name that Kafka runs as. This can be defined either in Kafka's JAAS config or in Kafka's config.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.login.callback.handler.class"></a>
   <a href="#sasl.login.callback.handler.class">sasl.login.callback.handler.class</a>
</h4>
<p>The fully qualified name of a SASL login callback handler class that implements the AuthenticateCallbackHandler interface. For brokers, login callback handler config must be prefixed with listener prefix and SASL mechanism name in lower-case. For example, listener.name.sasl_ssl.scram-sha-256.sasl.login.callback.handler.class=com.example.CustomScramLoginCallbackHandler</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>class</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.login.class"></a>
   <a href="#sasl.login.class">sasl.login.class</a>
</h4>
<p>The fully qualified name of a class that implements the Login interface. For brokers, login config must be prefixed with listener prefix and SASL mechanism name in lower-case. For example, listener.name.sasl_ssl.scram-sha-256.sasl.login.class=com.example.CustomScramLogin</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>class</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.mechanism"></a>
   <a href="#sasl.mechanism">sasl.mechanism</a>
</h4>
<p>SASL mechanism used for client connections. This may be any mechanism for which a security provider is available. GSSAPI is the default mechanism.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>GSSAPI</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="security.protocol"></a>
   <a href="#security.protocol">security.protocol</a>
</h4>
<p>Protocol used to communicate with brokers. Valid values are: PLAINTEXT, SSL, SASL_PLAINTEXT, SASL_SSL.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>PLAINTEXT</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="send.buffer.bytes"></a>
   <a href="#send.buffer.bytes">send.buffer.bytes</a>
</h4>
<p>The size of the TCP send buffer (SO_SNDBUF) to use when sending data. If the value is -1, the OS default will be used.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>131072</td></tr>
<tr><th>Valid Values:</th><td>[-1,...]</td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.enabled.protocols"></a>
   <a href="#ssl.enabled.protocols">ssl.enabled.protocols</a>
</h4>
<p>The list of protocols enabled for SSL connections.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>list</td></tr>
<tr><th>Default:</th><td>TLSv1.2</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.keystore.type"></a>
   <a href="#ssl.keystore.type">ssl.keystore.type</a>
</h4>
<p>The file format of the key store file. This is optional for client.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>JKS</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.protocol"></a>
   <a href="#ssl.protocol">ssl.protocol</a>
</h4>
<p>The SSL protocol used to generate the SSLContext. Default setting is TLSv1.2, which is fine for most cases. Allowed values in recent JVMs are TLSv1.2 and TLSv1.3. TLS, TLSv1.1, SSL, SSLv2 and SSLv3 may be supported in older JVMs, but their usage is discouraged due to known security vulnerabilities.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>TLSv1.2</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.provider"></a>
   <a href="#ssl.provider">ssl.provider</a>
</h4>
<p>The name of the security provider used for SSL connections. Default value is the default security provider of the JVM.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.truststore.type"></a>
   <a href="#ssl.truststore.type">ssl.truststore.type</a>
</h4>
<p>The file format of the trust store file.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>JKS</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>medium</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="auto.commit.interval.ms"></a>
   <a href="#auto.commit.interval.ms">auto.commit.interval.ms</a>
</h4>
<p>The frequency in milliseconds that the consumer offsets are auto-committed to Kafka if <code>enable.auto.commit</code> is set to <code>true</code>.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>5000</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="check.crcs"></a>
   <a href="#check.crcs">check.crcs</a>
</h4>
<p>Automatically check the CRC32 of the records consumed. This ensures no on-the-wire or on-disk corruption to the messages occurred. This check adds some overhead, so it may be disabled in cases seeking extreme performance.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>boolean</td></tr>
<tr><th>Default:</th><td>true</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="client.id"></a>
   <a href="#client.id">client.id</a>
</h4>
<p>An id string to pass to the server when making requests. The purpose of this is to be able to track the source of requests beyond just ip/port by allowing a logical application name to be included in server-side request logging.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>""</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="client.rack"></a>
   <a href="#client.rack">client.rack</a>
</h4>
<p>A rack identifier for this client. This can be any string value which indicates where this client is physically located. It corresponds with the broker config 'broker.rack'</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>""</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="fetch.max.wait.ms"></a>
   <a href="#fetch.max.wait.ms">fetch.max.wait.ms</a>
</h4>
<p>The maximum amount of time the server will block before answering the fetch request if there isn't sufficient data to immediately satisfy the requirement given by fetch.min.bytes.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>500</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="interceptor.classes"></a>
   <a href="#interceptor.classes">interceptor.classes</a>
</h4>
<p>A list of classes to use as interceptors. Implementing the <code>org.apache.kafka.clients.consumer.ConsumerInterceptor</code> interface allows you to intercept (and possibly mutate) records received by the consumer. By default, there are no interceptors.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>list</td></tr>
<tr><th>Default:</th><td>""</td></tr>
<tr><th>Valid Values:</th><td>non-null string</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="metadata.max.age.ms"></a>
   <a href="#metadata.max.age.ms">metadata.max.age.ms</a>
</h4>
<p>The period of time in milliseconds after which we force a refresh of metadata even if we haven't seen any partition leadership changes to proactively discover any new brokers or partitions.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>300000</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="metric.reporters"></a>
   <a href="#metric.reporters">metric.reporters</a>
</h4>
<p>A list of classes to use as metrics reporters. Implementing the <code>org.apache.kafka.common.metrics.MetricsReporter</code> interface allows plugging in classes that will be notified of new metric creation. The JmxReporter is always included to register JMX statistics.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>list</td></tr>
<tr><th>Default:</th><td>""</td></tr>
<tr><th>Valid Values:</th><td>non-null string</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="metrics.num.samples"></a>
   <a href="#metrics.num.samples">metrics.num.samples</a>
</h4>
<p>The number of samples maintained to compute metrics.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>int</td></tr>
<tr><th>Default:</th><td>2</td></tr>
<tr><th>Valid Values:</th><td>[1,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="metrics.recording.level"></a>
   <a href="#metrics.recording.level">metrics.recording.level</a>
</h4>
<p>The highest recording level for metrics.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>INFO</td></tr>
<tr><th>Valid Values:</th><td>[INFO, DEBUG]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="metrics.sample.window.ms"></a>
   <a href="#metrics.sample.window.ms">metrics.sample.window.ms</a>
</h4>
<p>The window of time a metrics sample is computed over.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>30000</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="reconnect.backoff.max.ms"></a>
   <a href="#reconnect.backoff.max.ms">reconnect.backoff.max.ms</a>
</h4>
<p>The maximum amount of time in milliseconds to wait when reconnecting to a broker that has repeatedly failed to connect. If provided, the backoff per host will increase exponentially for each consecutive connection failure, up to this maximum. After calculating the backoff increase, 20% random jitter is added to avoid connection storms.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>1000</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="reconnect.backoff.ms"></a>
   <a href="#reconnect.backoff.ms">reconnect.backoff.ms</a>
</h4>
<p>The base amount of time to wait before attempting to reconnect to a given host. This avoids repeatedly connecting to a host in a tight loop. This backoff applies to all connection attempts by the client to a broker.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>50</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="retry.backoff.ms"></a>
   <a href="#retry.backoff.ms">retry.backoff.ms</a>
</h4>
<p>The amount of time to wait before attempting to retry a failed request to a given topic partition. This avoids repeatedly sending requests in a tight loop under some failure scenarios.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>100</td></tr>
<tr><th>Valid Values:</th><td>[0,...]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.kerberos.kinit.cmd"></a>
   <a href="#sasl.kerberos.kinit.cmd">sasl.kerberos.kinit.cmd</a>
</h4>
<p>Kerberos kinit command path.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>/usr/bin/kinit</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.kerberos.min.time.before.relogin"></a>
   <a href="#sasl.kerberos.min.time.before.relogin">sasl.kerberos.min.time.before.relogin</a>
</h4>
<p>Login thread sleep time between refresh attempts.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>long</td></tr>
<tr><th>Default:</th><td>60000</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.kerberos.ticket.renew.jitter"></a>
   <a href="#sasl.kerberos.ticket.renew.jitter">sasl.kerberos.ticket.renew.jitter</a>
</h4>
<p>Percentage of random jitter added to the renewal time.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>double</td></tr>
<tr><th>Default:</th><td>0.05</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.kerberos.ticket.renew.window.factor"></a>
   <a href="#sasl.kerberos.ticket.renew.window.factor">sasl.kerberos.ticket.renew.window.factor</a>
</h4>
<p>Login thread will sleep until the specified window factor of time from last refresh to ticket's expiry has been reached, at which time it will try to renew the ticket.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>double</td></tr>
<tr><th>Default:</th><td>0.8</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.login.refresh.buffer.seconds"></a>
   <a href="#sasl.login.refresh.buffer.seconds">sasl.login.refresh.buffer.seconds</a>
</h4>
<p>The amount of buffer time before credential expiration to maintain when refreshing a credential, in seconds. If a refresh would otherwise occur closer to expiration than the number of buffer seconds then the refresh will be moved up to maintain as much of the buffer time as possible. Legal values are between 0 and 3600 (1 hour); a default value of  300 (5 minutes) is used if no value is specified. This value and sasl.login.refresh.min.period.seconds are both ignored if their sum exceeds the remaining lifetime of a credential. Currently applies only to OAUTHBEARER.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>short</td></tr>
<tr><th>Default:</th><td>300</td></tr>
<tr><th>Valid Values:</th><td>[0,...,3600]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.login.refresh.min.period.seconds"></a>
   <a href="#sasl.login.refresh.min.period.seconds">sasl.login.refresh.min.period.seconds</a>
</h4>
<p>The desired minimum time for the login refresh thread to wait before refreshing a credential, in seconds. Legal values are between 0 and 900 (15 minutes); a default value of 60 (1 minute) is used if no value is specified.  This value and  sasl.login.refresh.buffer.seconds are both ignored if their sum exceeds the remaining lifetime of a credential. Currently applies only to OAUTHBEARER.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>short</td></tr>
<tr><th>Default:</th><td>60</td></tr>
<tr><th>Valid Values:</th><td>[0,...,900]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.login.refresh.window.factor"></a>
   <a href="#sasl.login.refresh.window.factor">sasl.login.refresh.window.factor</a>
</h4>
<p>Login refresh thread will sleep until the specified window factor relative to the credential's lifetime has been reached, at which time it will try to refresh the credential. Legal values are between 0.5 (50%) and 1.0 (100%) inclusive; a default value of 0.8 (80%) is used if no value is specified. Currently applies only to OAUTHBEARER.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>double</td></tr>
<tr><th>Default:</th><td>0.8</td></tr>
<tr><th>Valid Values:</th><td>[0.5,...,1.0]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="sasl.login.refresh.window.jitter"></a>
   <a href="#sasl.login.refresh.window.jitter">sasl.login.refresh.window.jitter</a>
</h4>
<p>The maximum amount of random jitter relative to the credential's lifetime that is added to the login refresh thread's sleep time. Legal values are between 0 and 0.25 (25%) inclusive; a default value of 0.05 (5%) is used if no value is specified. Currently applies only to OAUTHBEARER.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>double</td></tr>
<tr><th>Default:</th><td>0.05</td></tr>
<tr><th>Valid Values:</th><td>[0.0,...,0.25]</td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="security.providers"></a>
   <a href="#security.providers">security.providers</a>
</h4>
<p>A list of configurable creator classes each returning a provider implementing security algorithms. These classes should implement the <code>org.apache.kafka.common.security.auth.SecurityProviderCreator</code> interface.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.cipher.suites"></a>
   <a href="#ssl.cipher.suites">ssl.cipher.suites</a>
</h4>
<p>A list of cipher suites. This is a named combination of authentication, encryption, MAC and key exchange algorithm used to negotiate the security settings for a network connection using TLS or SSL network protocol. By default all the available cipher suites are supported.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>list</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.endpoint.identification.algorithm"></a>
   <a href="#ssl.endpoint.identification.algorithm">ssl.endpoint.identification.algorithm</a>
</h4>
<p>The endpoint identification algorithm to validate server hostname using server certificate. </p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>https</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.keymanager.algorithm"></a>
   <a href="#ssl.keymanager.algorithm">ssl.keymanager.algorithm</a>
</h4>
<p>The algorithm used by key manager factory for SSL connections. Default value is the key manager factory algorithm configured for the Java Virtual Machine.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>SunX509</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.secure.random.implementation"></a>
   <a href="#ssl.secure.random.implementation">ssl.secure.random.implementation</a>
</h4>
<p>The SecureRandom PRNG implementation to use for SSL cryptography operations. </p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>null</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
<li>
<h4 class="anchor-heading">
   <a class="anchor-link" id="ssl.trustmanager.algorithm"></a>
   <a href="#ssl.trustmanager.algorithm">ssl.trustmanager.algorithm</a>
</h4>
<p>The algorithm used by trust manager factory for SSL connections. Default value is the trust manager factory algorithm configured for the Java Virtual Machine.</p>
<table class="data-table"><tbody>
<tr><th>Type:</th><td>string</td></tr>
<tr><th>Default:</th><td>PKIX</td></tr>
<tr><th>Valid Values:</th><td></td></tr>
<tr><th>Importance:</th><td>low</td></tr>
</tbody></table>
</li>
</ul>

