Constant Field Values
Contents
org.apache.*
-
Modifier and TypeConstant FieldValue
public static final String
"auto.include.jmx.reporter"
public static final String
"Deprecated. Whether to automatically include JmxReporter even if it\'s not listed in <code>metric.reporters</code>. This configuration will be removed in Kafka 4.0, users should instead include <code>org.apache.kafka.common.metrics.JmxReporter</code> in <code>metric.reporters</code> in order to enable the JmxReporter."
public static final String
"bootstrap.controllers"
public static final String
"A list of host/port pairs to use for establishing the initial connection to the KRaft controller quorum. This list should be in the form <code>host1:port1,host2:port2,...</code>."
public static final String
"bootstrap.servers"
public static final String
"client.dns.lookup"
public static final String
"client.id"
public static final String
"connections.max.idle.ms"
public static final String
"default.api.timeout.ms"
public static final String
"PLAINTEXT"
public static final String
"enable.metrics.push"
public static final String
"Whether to enable pushing of client metrics to the cluster, if the cluster has a client metrics subscription which matches this client."
public static final String
"metadata.max.age.ms"
public static final String
"metadata.recovery.strategy"
public static final String
"Controls how the client recovers when none of the brokers known to it is available. If set to <code>none</code>, the client fails. If set to <code>rebootstrap</code>, the client repeats the bootstrap process using <code>bootstrap.servers</code>. Rebootstrapping is useful when a client communicates with brokers so infrequently that the set of brokers may change entirely before the client refreshes metadata. Metadata recovery is triggered when all last-known brokers appear unavailable simultaneously. Brokers appear unavailable when disconnected and no current retry attempt is in-progress. Consider increasing <code>reconnect.backoff.ms</code> and <code>reconnect.backoff.max.ms</code> and decreasing <code>socket.connection.setup.timeout.ms</code> and <code>socket.connection.setup.timeout.max.ms</code> for the client."
public static final String
"metric.reporters"
public static final String
"metrics.num.samples"
public static final String
"metrics.recording.level"
public static final String
"metrics.sample.window.ms"
public static final String
"receive.buffer.bytes"
public static final String
"reconnect.backoff.max.ms"
public static final String
"reconnect.backoff.ms"
public static final String
"request.timeout.ms"
public static final String
"retries"
public static final String
"retry.backoff.max.ms"
public static final String
"retry.backoff.ms"
public static final String
"security.protocol"
public static final String
"security.providers"
public static final String
"send.buffer.bytes"
public static final String
"socket.connection.setup.timeout.max.ms"
public static final String
"socket.connection.setup.timeout.ms"
-
Modifier and TypeConstant FieldValue
public static final String
"allow.auto.create.topics"
public static final String
"auto.commit.interval.ms"
public static final String
"auto.include.jmx.reporter"
public static final String
"auto.offset.reset"
public static final String
"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>Note that altering partition numbers while setting this config to latest may cause message delivery loss since producers could start to send messages to newly added partitions (i.e. no initial offsets exist yet) before consumers reset their offsets."
public static final String
"bootstrap.servers"
public static final String
"check.crcs"
public static final String
"client.dns.lookup"
public static final String
"client.id"
public static final String
"client.rack"
public static final String
"connections.max.idle.ms"
public static final boolean
true
public static final String
"default.api.timeout.ms"
public static final String
""
public static final boolean
true
public static final int
52428800
public static final int
500
public static final int
1
public static final int
1048576
public static final int
500
public static final String
"enable.auto.commit"
public static final String
"enable.metrics.push"
public static final String
"Whether to enable pushing of client metrics to the cluster, if the cluster has a client metrics subscription which matches this client."
public static final String
"exclude.internal.topics"
public static final String
"fetch.max.bytes"
public static final String
"fetch.max.wait.ms"
public static final String
"fetch.min.bytes"
public static final String
"group.id"
public static final String
"group.instance.id"
public static final String
"group.protocol"
public static final String
"The group protocol consumer should use. We currently support \"classic\" or \"consumer\". If \"consumer\" is specified, then the consumer group protocol will be used. Otherwise, the classic group protocol will be used."
public static final String
"group.remote.assignor"
public static final String
"The server-side assignor to use. If no assignor is specified, the group coordinator will pick one. This configuration is applied only if <code>group.protocol</code> is set to \"consumer\"."
public static final String
"heartbeat.interval.ms"
public static final String
"interceptor.classes"
public static final String
"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."
public static final String
"isolation.level"
public static final String
"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>"
public static final String
"key.deserializer"
public static final String
"Deserializer class for key that implements the <code>org.apache.kafka.common.serialization.Deserializer</code> interface."
public static final String
"max.partition.fetch.bytes"
public static final String
"max.poll.interval.ms"
public static final String
"max.poll.records"
public static final String
"metadata.max.age.ms"
public static final String
"metric.reporters"
public static final String
"metrics.num.samples"
public static final String
"metrics.recording.level"
public static final String
"metrics.sample.window.ms"
public static final String
"partition.assignment.strategy"
public static final String
"receive.buffer.bytes"
public static final String
"reconnect.backoff.max.ms"
public static final String
"reconnect.backoff.ms"
public static final String
"request.timeout.ms"
public static final String
"retry.backoff.max.ms"
public static final String
"retry.backoff.ms"
public static final String
"security.providers"
public static final String
"send.buffer.bytes"
public static final String
"session.timeout.ms"
public static final String
"socket.connection.setup.timeout.max.ms"
public static final String
"socket.connection.setup.timeout.ms"
public static final String
"value.deserializer"
public static final String
"Deserializer class for value that implements the <code>org.apache.kafka.common.serialization.Deserializer</code> interface."
-
Modifier and TypeConstant FieldValue
public static final long
-1L
public static final int
-1
public static final int
-1
-
Modifier and TypeConstant FieldValue
public static final String
"acks"
public static final String
"auto.include.jmx.reporter"
public static final String
"batch.size"
public static final String
"bootstrap.servers"
public static final String
"buffer.memory"
public static final String
"client.dns.lookup"
public static final String
"client.id"
public static final String
"compression.gzip.level"
public static final String
"compression.lz4.level"
public static final String
"compression.type"
public static final String
"compression.zstd.level"
public static final String
"connections.max.idle.ms"
public static final String
"delivery.timeout.ms"
public static final String
"enable.idempotence"
public static final String
"When set to \'true\', the producer will ensure that exactly one copy of each message is written in the stream. If \'false\', producer retries due to broker failures, etc., may write duplicates of the retried message in the stream. Note that enabling idempotence requires <code>max.in.flight.requests.per.connection</code> to be less than or equal to 5 (with message ordering preserved for any allowable value), <code>retries</code> to be greater than 0, and <code>acks</code> must be \'all\'. <p>Idempotence is enabled by default if no conflicting configurations are set. If conflicting configurations are set and idempotence is not explicitly enabled, idempotence is disabled. If idempotence is explicitly enabled and conflicting configurations are set, a <code>ConfigException</code> is thrown."
public static final String
"enable.metrics.push"
public static final String
"Whether to enable pushing of client metrics to the cluster, if the cluster has a client metrics subscription which matches this client."
public static final String
"interceptor.classes"
public static final String
"A list of classes to use as interceptors. Implementing the <code>org.apache.kafka.clients.producer.ProducerInterceptor</code> interface allows you to intercept (and possibly mutate) the records received by the producer before they are published to the Kafka cluster. By default, there are no interceptors."
public static final String
"key.serializer"
public static final String
"Serializer class for key that implements the <code>org.apache.kafka.common.serialization.Serializer</code> interface."
public static final String
"linger.ms"
public static final String
"max.block.ms"
public static final String
"max.in.flight.requests.per.connection"
public static final String
"max.request.size"
public static final String
"metadata.max.age.ms"
public static final String
"metadata.max.idle.ms"
public static final String
"metric.reporters"
public static final String
"metrics.num.samples"
public static final String
"metrics.recording.level"
public static final String
"metrics.sample.window.ms"
public static final String
"partitioner.adaptive.partitioning.enable"
public static final String
"partitioner.availability.timeout.ms"
public static final String
"partitioner.class"
public static final String
"partitioner.ignore.keys"
public static final String
"receive.buffer.bytes"
public static final String
"reconnect.backoff.max.ms"
public static final String
"reconnect.backoff.ms"
public static final String
"request.timeout.ms"
public static final String
"retries"
public static final String
"retry.backoff.max.ms"
public static final String
"retry.backoff.ms"
public static final String
"security.providers"
public static final String
"send.buffer.bytes"
public static final String
"socket.connection.setup.timeout.max.ms"
public static final String
"socket.connection.setup.timeout.ms"
public static final String
"transaction.timeout.ms"
public static final String
"The maximum amount of time in milliseconds that a transaction will remain open before the coordinator proactively aborts it. The start of the transaction is set at the time that the first partition is added to it. If this value is larger than the <code>transaction.max.timeout.ms</code> setting in the broker, the request will fail with a <code>InvalidTxnTimeoutException</code> error."
public static final String
"transactional.id"
public static final String
"The TransactionalId to use for transactional delivery. This enables reliability semantics which span multiple producer sessions since it allows the client to guarantee that transactions using the same TransactionalId have been completed prior to starting any new transactions. If no TransactionalId is provided, then the producer is limited to idempotent delivery. If a TransactionalId is configured, <code>enable.idempotence</code> is implied. By default the TransactionId is not configured, which means transactions cannot be used. Note that, by default, transactions require a cluster of at least three brokers which is the recommended setting for production; for development you can change this, by adjusting broker setting <code>transaction.state.log.replication.factor</code>."
public static final String
"value.serializer"
public static final String
"Serializer class for value that implements the <code>org.apache.kafka.common.serialization.Serializer</code> interface."
-
Modifier and TypeConstant FieldValue
public static final String
"/usr/bin/kinit"
public static final long
60000L
public static final double
0.05
public static final double
0.8
public static final short
300
public static final short
60
public static final double
0.8
public static final double
0.05
public static final long
10000L
public static final long
100L
public static final String
"GSSAPI"
public static final int
30
public static final boolean
false
public static final long
3600000L
public static final long
10000L
public static final long
100L
public static final String
"scope"
public static final String
"sub"
public static final String
"GSSAPI"
public static final String
"sasl.client.callback.handler.class"
public static final String
"The fully qualified name of a SASL client callback handler class that implements the AuthenticateCallbackHandler interface."
public static final String
"sasl.jaas.config"
public static final String
"JAAS login context parameters for SASL connections in the format used by JAAS configuration files. JAAS configuration file format is described <a href=\"https://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;"
public static final String
"sasl.kerberos.kinit.cmd"
public static final String
"Kerberos kinit command path."
public static final String
"sasl.kerberos.min.time.before.relogin"
public static final String
"Login thread sleep time between refresh attempts."
public static final String
"sasl.kerberos.service.name"
public static final String
"The Kerberos principal name that Kafka runs as. This can be defined either in Kafka\'s JAAS config or in Kafka\'s config."
public static final String
"sasl.kerberos.ticket.renew.jitter"
public static final String
"Percentage of random jitter added to the renewal time."
public static final String
"sasl.kerberos.ticket.renew.window.factor"
public static final String
"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."
public static final String
"sasl.login.callback.handler.class"
public static final String
"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"
public static final String
"sasl.login.class"
public static final String
"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"
public static final String
"sasl.login.connect.timeout.ms"
public static final String
"The (optional) value in milliseconds for the external authentication provider connection timeout. Currently applies only to OAUTHBEARER."
public static final String
"sasl.login.read.timeout.ms"
public static final String
"The (optional) value in milliseconds for the external authentication provider read timeout. Currently applies only to OAUTHBEARER."
public static final String
"sasl.login.refresh.buffer.seconds"
public static final String
"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."
public static final String
"sasl.login.refresh.min.period.seconds"
public static final String
"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."
public static final String
"sasl.login.refresh.window.factor"
public static final String
"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."
public static final String
"sasl.login.refresh.window.jitter"
public static final String
"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."
public static final String
"sasl.login.retry.backoff.max.ms"
public static final String
"The (optional) value in milliseconds for the maximum wait between login attempts to the external authentication provider. Login uses an exponential backoff algorithm with an initial wait based on the sasl.login.retry.backoff.ms setting and will double in wait length between attempts up to a maximum wait length specified by the sasl.login.retry.backoff.max.ms setting. Currently applies only to OAUTHBEARER."
public static final String
"sasl.login.retry.backoff.ms"
public static final String
"The (optional) value in milliseconds for the initial wait between login attempts to the external authentication provider. Login uses an exponential backoff algorithm with an initial wait based on the sasl.login.retry.backoff.ms setting and will double in wait length between attempts up to a maximum wait length specified by the sasl.login.retry.backoff.max.ms setting. Currently applies only to OAUTHBEARER."
public static final String
"sasl.mechanism"
public static final String
"SASL mechanism used for client connections. This may be any mechanism for which a security provider is available. GSSAPI is the default mechanism."
public static final String
"sasl.oauthbearer.clock.skew.seconds"
public static final String
"The (optional) value in seconds to allow for differences between the time of the OAuth/OIDC identity provider and the broker."
public static final String
"sasl.oauthbearer.expected.audience"
public static final String
"The (optional) comma-delimited setting for the broker to use to verify that the JWT was issued for one of the expected audiences. The JWT will be inspected for the standard OAuth \"aud\" claim and if this value is set, the broker will match the value from JWT\'s \"aud\" claim to see if there is an exact match. If there is no match, the broker will reject the JWT and authentication will fail."
public static final String
"sasl.oauthbearer.expected.issuer"
public static final String
"The (optional) setting for the broker to use to verify that the JWT was created by the expected issuer. The JWT will be inspected for the standard OAuth \"iss\" claim and if this value is set, the broker will match it exactly against what is in the JWT\'s \"iss\" claim. If there is no match, the broker will reject the JWT and authentication will fail."
public static final String
"sasl.oauthbearer.header.urlencode"
public static final String
"The (optional) setting to enable the OAuth client to URL-encode the client_id and client_secret in the authorization header in accordance with RFC6749, see <a href=\"https://datatracker.ietf.org/doc/html/rfc6749#section-2.3.1\">here</a> for more details. The default value is set to \'false\' for backward compatibility"
public static final String
"sasl.oauthbearer.jwks.endpoint.refresh.ms"
public static final String
"The (optional) value in milliseconds for the broker to wait between refreshing its JWKS (JSON Web Key Set) cache that contains the keys to verify the signature of the JWT."
public static final String
"sasl.oauthbearer.jwks.endpoint.retry.backoff.max.ms"
public static final String
"The (optional) value in milliseconds for the maximum wait between attempts to retrieve the JWKS (JSON Web Key Set) from the external authentication provider. JWKS retrieval uses an exponential backoff algorithm with an initial wait based on the sasl.oauthbearer.jwks.endpoint.retry.backoff.ms setting and will double in wait length between attempts up to a maximum wait length specified by the sasl.oauthbearer.jwks.endpoint.retry.backoff.max.ms setting."
public static final String
"sasl.oauthbearer.jwks.endpoint.retry.backoff.ms"
public static final String
"The (optional) value in milliseconds for the initial wait between JWKS (JSON Web Key Set) retrieval attempts from the external authentication provider. JWKS retrieval uses an exponential backoff algorithm with an initial wait based on the sasl.oauthbearer.jwks.endpoint.retry.backoff.ms setting and will double in wait length between attempts up to a maximum wait length specified by the sasl.oauthbearer.jwks.endpoint.retry.backoff.max.ms setting."
public static final String
"sasl.oauthbearer.jwks.endpoint.url"
public static final String
"The OAuth/OIDC provider URL from which the provider\'s <a href=\"https://datatracker.ietf.org/doc/html/rfc7517#section-5\">JWKS (JSON Web Key Set)</a> can be retrieved. The URL can be HTTP(S)-based or file-based. If the URL is HTTP(S)-based, the JWKS data will be retrieved from the OAuth/OIDC provider via the configured URL on broker startup. All then-current keys will be cached on the broker for incoming requests. If an authentication request is received for a JWT that includes a \"kid\" header claim value that isn\'t yet in the cache, the JWKS endpoint will be queried again on demand. However, the broker polls the URL every sasl.oauthbearer.jwks.endpoint.refresh.ms milliseconds to refresh the cache with any forthcoming keys before any JWT requests that include them are received. If the URL is file-based, the broker will load the JWKS file from a configured location on startup. In the event that the JWT includes a \"kid\" header value that isn\'t in the JWKS file, the broker will reject the JWT and authentication will fail."
public static final String
"sasl.oauthbearer.scope.claim.name"
public static final String
"The OAuth claim for the scope is often named \"scope\", but this (optional) setting can provide a different name to use for the scope included in the JWT payload\'s claims if the OAuth/OIDC provider uses a different name for that claim."
public static final String
"sasl.oauthbearer.sub.claim.name"
public static final String
"The OAuth claim for the subject is often named \"sub\", but this (optional) setting can provide a different name to use for the subject included in the JWT payload\'s claims if the OAuth/OIDC provider uses a different name for that claim."
public static final String
"sasl.oauthbearer.token.endpoint.url"
public static final String
"The URL for the OAuth/OIDC identity provider. If the URL is HTTP(S)-based, it is the issuer\'s token endpoint URL to which requests will be made to login based on the configuration in sasl.jaas.config. If the URL is file-based, it specifies a file containing an access token (in JWT serialized form) issued by the OAuth/OIDC identity provider to use for authorization."
-
Modifier and TypeConstant FieldValue
public static final String
"security.providers"
public static final String
"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."
-
Modifier and TypeConstant FieldValue
public static final String
"https"
public static final String
"JKS"
public static final String
"JKS"
public static final String
"ssl.cipher.suites"
public static final String
"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."
public static final String
"ssl.enabled.protocols"
public static final String
"The list of protocols enabled for SSL connections. The default is \'TLSv1.2,TLSv1.3\' when running with Java 11 or newer, \'TLSv1.2\' otherwise. With the default value for Java 11, clients and servers will prefer TLSv1.3 if both support it and fallback to TLSv1.2 otherwise (assuming both support at least TLSv1.2). This default should be fine for most cases. Also see the config documentation for `ssl.protocol`."
public static final String
"ssl.endpoint.identification.algorithm"
public static final String
"The endpoint identification algorithm to validate server hostname using server certificate. "
public static final String
"ssl.engine.factory.class"
public static final String
"The class of type org.apache.kafka.common.security.auth.SslEngineFactory to provide SSLEngine objects. Default value is org.apache.kafka.common.security.ssl.DefaultSslEngineFactory. Alternatively, setting this to org.apache.kafka.common.security.ssl.CommonNameLoggingSslEngineFactory will log the common name of expired SSL certificates used by clients to authenticate at any of the brokers with log level INFO. Note that this will cause a tiny delay during establishment of new connections from mTLS clients to brokers due to the extra code for examining the certificate chain provided by the client. Note further that the implementation uses a custom truststore based on the standard Java truststore and thus might be considered a security risk due to not being as mature as the standard one."
public static final String
"ssl.key.password"
public static final String
"The password of the private key in the key store file or the PEM key specified in \'ssl.keystore.key\'."
public static final String
"ssl.keymanager.algorithm"
public static final String
"The algorithm used by key manager factory for SSL connections. Default value is the key manager factory algorithm configured for the Java Virtual Machine."
public static final String
"ssl.keystore.certificate.chain"
public static final String
"Certificate chain in the format specified by \'ssl.keystore.type\'. Default SSL engine factory supports only PEM format with a list of X.509 certificates"
public static final String
"ssl.keystore.key"
public static final String
"Private key in the format specified by \'ssl.keystore.type\'. Default SSL engine factory supports only PEM format with PKCS#8 keys. If the key is encrypted, key password must be specified using \'ssl.key.password\'"
public static final String
"ssl.keystore.location"
public static final String
"The location of the key store file. This is optional for client and can be used for two-way authentication for client."
public static final String
"ssl.keystore.password"
public static final String
"The store password for the key store file. This is optional for client and only needed if \'ssl.keystore.location\' is configured. Key store password is not supported for PEM format."
public static final String
"ssl.keystore.type"
public static final String
"The file format of the key store file. This is optional for client. The values currently supported by the default `ssl.engine.factory.class` are [JKS, PKCS12, PEM]."
public static final String
"ssl.protocol"
public static final String
"The SSL protocol used to generate the SSLContext. The default is \'TLSv1.3\' when running with Java 11 or newer, \'TLSv1.2\' otherwise. This value should be fine for most use 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. With the default value for this config and \'ssl.enabled.protocols\', clients will downgrade to \'TLSv1.2\' if the server does not support \'TLSv1.3\'. If this config is set to \'TLSv1.2\', clients will not use \'TLSv1.3\' even if it is one of the values in ssl.enabled.protocols and the server only supports \'TLSv1.3\'."
public static final String
"ssl.provider"
public static final String
"The name of the security provider used for SSL connections. Default value is the default security provider of the JVM."
public static final String
"ssl.secure.random.implementation"
public static final String
"The SecureRandom PRNG implementation to use for SSL cryptography operations. "
public static final String
"ssl.trustmanager.algorithm"
public static final String
"The algorithm used by trust manager factory for SSL connections. Default value is the trust manager factory algorithm configured for the Java Virtual Machine."
public static final String
"ssl.truststore.certificates"
public static final String
"Trusted certificates in the format specified by \'ssl.truststore.type\'. Default SSL engine factory supports only PEM format with X.509 certificates."
public static final String
"ssl.truststore.location"
public static final String
"The location of the trust store file."
public static final String
"ssl.truststore.password"
public static final String
"The password for the trust store file. If a password is not set, trust store file configured will still be used, but integrity checking is disabled. Trust store password is not supported for PEM format."
public static final String
"ssl.truststore.type"
public static final String
"The file format of the trust store file. The values currently supported by the default `ssl.engine.factory.class` are [JKS, PKCS12, PEM]."
-
Modifier and TypeConstant FieldValue
public static final String
"compact"
public static final String
"cleanup.policy"
public static final String
"delete"
public static final String
"This config designates the retention policy to use on log segments. The \"delete\" policy (which is the default) will discard old segments when their retention time or size limit has been reached. The \"compact\" policy will enable <a href=\"#compaction\">log compaction</a>, which retains the latest value for each key. It is also possible to specify both policies in a comma-separated list (e.g. \"delete,compact\"). In this case, old segments will be discarded per the retention time and size configuration, while retained segments will be compacted."
public static final String
"compression.gzip.level"
public static final String
"The compression level to use if compression.type is set to <code>gzip</code>."
public static final String
"compression.lz4.level"
public static final String
"The compression level to use if compression.type is set to <code>lz4</code>."
public static final String
"compression.type"
public static final String
"Specify the final compression type for a given topic. This configuration accepts the standard compression codecs (\'gzip\', \'snappy\', \'lz4\', \'zstd\'). It additionally accepts \'uncompressed\' which is equivalent to no compression; and \'producer\' which means retain the original compression codec set by the producer."
public static final String
"compression.zstd.level"
public static final String
"The compression level to use if compression.type is set to <code>zstd</code>."
public static final String
"delete.retention.ms"
public static final String
"The amount of time to retain delete tombstone markers for <a href=\"#compaction\">log compacted</a> topics. This setting also gives a bound on the time in which a consumer must complete a read if they begin from offset 0 to ensure that they get a valid snapshot of the final stage (otherwise delete tombstones may be collected before they complete their scan)."
public static final String
"file.delete.delay.ms"
public static final String
"The time to wait before deleting a file from the filesystem"
public static final String
"flush.messages"
public static final String
"This setting allows specifying an interval at which we will force an fsync of data written to the log. For example if this was set to 1 we would fsync after every message; if it were 5 we would fsync after every five messages. In general we recommend you not set this and use replication for durability and allow the operating system\'s background flush capabilities as it is more efficient. This setting can be overridden on a per-topic basis (see <a href=\"#topicconfigs\">the per-topic configuration section</a>)."
public static final String
"flush.ms"
public static final String
"This setting allows specifying a time interval at which we will force an fsync of data written to the log. For example if this was set to 1000 we would fsync after 1000 ms had passed. In general we recommend you not set this and use replication for durability and allow the operating system\'s background flush capabilities as it is more efficient."
public static final String
"index.interval.bytes"
public static final String
"This setting controls how frequently Kafka adds an index entry to its offset index. The default setting ensures that we index a message roughly every 4096 bytes. More indexing allows reads to jump closer to the exact position in the log but makes the index larger. You probably don\'t need to change this."
public static final String
"local.retention.bytes"
public static final String
"The maximum size of local log segments that can grow for a partition before it deletes the old segments. Default value is -2, it represents `retention.bytes` value to be used. The effective value should always be less than or equal to `retention.bytes` value."
public static final String
"local.retention.ms"
public static final String
"The number of milliseconds to keep the local log segment before it gets deleted. Default value is -2, it represents `retention.ms` value is to be used. The effective value should always be less than or equal to `retention.ms` value."
public static final String
"max.compaction.lag.ms"
public static final String
"The maximum time a message will remain ineligible for compaction in the log. Only applicable for logs that are being compacted."
public static final String
"max.message.bytes"
public static final String
"The largest record batch size allowed by Kafka (after compression if compression is enabled). If this is increased and there are consumers older than 0.10.2, the consumers\' fetch size must also be increased so that they can fetch record batches this large. In the latest message format version, records are always grouped into batches for efficiency. In previous message format versions, uncompressed records are not grouped into batches and this limit only applies to a single record in that case."
public static final String
"message.downconversion.enable"
public static final String
"This configuration controls whether down-conversion of message formats is enabled to satisfy consume requests. When set to <code>false</code>, broker will not perform down-conversion for consumers expecting an older message format. The broker responds with <code>UNSUPPORTED_VERSION</code> error for consume requests from such older clients. This configurationdoes not apply to any message format conversion that might be required for replication to followers."
public static final String
"message.format.version"
public static final String
"[DEPRECATED] Specify the message format version the broker will use to append messages to the logs. The value of this config is always assumed to be `3.0` if `inter.broker.protocol.version` is 3.0 or higher (the actual config value is ignored). Otherwise, the value should be a valid ApiVersion. Some examples are: 0.10.0, 1.1, 2.8, 3.0. By setting a particular message format version, the user is certifying that all the existing messages on disk are smaller or equal than the specified version. Setting this value incorrectly will cause consumers with older versions to break as they will receive messages with a format that they don\'t understand."
public static final String
"message.timestamp.after.max.ms"
public static final String
"This configuration sets the allowable timestamp difference between the message timestamp and the broker\'s timestamp. The message timestamp can be later than or equal to the broker\'s timestamp, with the maximum allowable difference determined by the value set in this configuration. If message.timestamp.type=CreateTime, the message will be rejected if the difference in timestamps exceeds this specified threshold. This configuration is ignored if message.timestamp.type=LogAppendTime."
public static final String
"message.timestamp.before.max.ms"
public static final String
"This configuration sets the allowable timestamp difference between the broker\'s timestamp and the message timestamp. The message timestamp can be earlier than or equal to the broker\'s timestamp, with the maximum allowable difference determined by the value set in this configuration. If message.timestamp.type=CreateTime, the message will be rejected if the difference in timestamps exceeds this specified threshold. This configuration is ignored if message.timestamp.type=LogAppendTime."
public static final String
"message.timestamp.difference.max.ms"
public static final String
"[DEPRECATED] The maximum difference allowed between the timestamp when a broker receives a message and the timestamp specified in the message. If message.timestamp.type=CreateTime, a message will be rejected if the difference in timestamp exceeds this threshold. This configuration is ignored if message.timestamp.type=LogAppendTime."
public static final String
"message.timestamp.type"
public static final String
"Define whether the timestamp in the message is message create time or log append time. The value should be either `CreateTime` or `LogAppendTime`"
public static final String
"min.cleanable.dirty.ratio"
public static final String
"This configuration controls how frequently the log compactor will attempt to clean the log (assuming <a href=\"#compaction\">log compaction</a> is enabled). By default we will avoid cleaning a log where more than 50% of the log has been compacted. This ratio bounds the maximum space wasted in the log by duplicates (at 50% at most 50% of the log could be duplicates). A higher ratio will mean fewer, more efficient cleanings but will mean more wasted space in the log. If the max.compaction.lag.ms or the min.compaction.lag.ms configurations are also specified, then the log compactor considers the log to be eligible for compaction as soon as either: (i) the dirty ratio threshold has been met and the log has had dirty (uncompacted) records for at least the min.compaction.lag.ms duration, or (ii) if the log has had dirty (uncompacted) records for at most the max.compaction.lag.ms period."
public static final String
"min.compaction.lag.ms"
public static final String
"The minimum time a message will remain uncompacted in the log. Only applicable for logs that are being compacted."
public static final String
"min.insync.replicas"
public static final String
"When a producer sets acks to \"all\" (or \"-1\"), this configuration specifies the minimum number of replicas that must acknowledge a write for the write to be considered successful. If this minimum cannot be met, then the producer will raise an exception (either NotEnoughReplicas or NotEnoughReplicasAfterAppend).<br>When used together, <code>min.insync.replicas</code> and <code>acks</code> allow you to enforce greater durability guarantees. A typical scenario would be to create a topic with a replication factor of 3, set <code>min.insync.replicas</code> to 2, and produce with <code>acks</code> of \"all\". This will ensure that the producer raises an exception if a majority of replicas do not receive a write."
public static final String
"preallocate"
public static final String
"True if we should preallocate the file on disk when creating a new log segment."
public static final String
"remote.log.copy.disable"
public static final String
"Determines whether tiered data for a topic should become read only, and no more data uploading on a topic. Once this config is set to true, the local retention configuration (i.e. local.retention.ms/bytes) becomes irrelevant, and all data expiration follows the topic-wide retention configuration(i.e. retention.ms/bytes)."
public static final String
"remote.log.delete.on.disable"
public static final String
"Determines whether tiered data for a topic should be deleted after tiered storage is disabled on a topic. This configuration should be enabled when trying to set `remote.storage.enable` from true to false"
public static final String
"remote.storage.enable"
public static final String
"To enable tiered storage for a topic, set this configuration as true. You can not disable this config once it is enabled. It will be provided in future versions."
public static final String
"retention.bytes"
public static final String
"This configuration controls the maximum size a partition (which consists of log segments) can grow to before we will discard old log segments to free up space if we are using the \"delete\" retention policy. By default there is no size limit only a time limit. Since this limit is enforced at the partition level, multiply it by the number of partitions to compute the topic retention in bytes. Additionally, retention.bytes configuration operates independently of \"segment.ms\" and \"segment.bytes\" configurations. Moreover, it triggers the rolling of new segment if the retention.bytes is configured to zero."
public static final String
"retention.ms"
public static final String
"This configuration controls the maximum time we will retain a log before we will discard old log segments to free up space if we are using the \"delete\" retention policy. This represents an SLA on how soon consumers must read their data. If set to -1, no time limit is applied. Additionally, retention.ms configuration operates independently of \"segment.ms\" and \"segment.bytes\" configurations. Moreover, it triggers the rolling of new segment if the retention.ms condition is satisfied."
public static final String
"segment.bytes"
public static final String
"This configuration controls the segment file size for the log. Retention and cleaning is always done a file at a time so a larger segment size means fewer files but less granular control over retention."
public static final String
"segment.index.bytes"
public static final String
"This configuration controls the size of the index that maps offsets to file positions. We preallocate this index file and shrink it only after log rolls. You generally should not need to change this setting."
public static final String
"segment.jitter.ms"
public static final String
"The maximum random jitter subtracted from the scheduled segment roll time to avoid thundering herds of segment rolling"
public static final String
"segment.ms"
public static final String
"This configuration controls the period of time after which Kafka will force the log to roll even if the segment file isn\'t full to ensure that retention can delete or compact old data."
public static final String
"unclean.leader.election.enable"
public static final String
"Indicates whether to enable replicas not in the ISR set to be elected as leader as a last resort, even though doing so may result in data loss.<p>Note: In KRaft mode, when enabling this config dynamically, it needs to wait for the unclean leader electionthread to trigger election periodically (default is 5 minutes). Please run `kafka-leader-election.sh` with `unclean` option to trigger the unclean leader election immediately if needed.</p>"
-
Modifier and TypeConstant FieldValue
public static final String
""
public static final String
".*"
public static final String
"metrics.jmx.exclude"
public static final String
"metrics.jmx.blacklist"
public static final String
"metrics.jmx.include"
public static final String
"metrics.jmx.whitelist"
public static final String
"metrics.jmx."
-
Modifier and TypeConstant FieldValue
public static final String
"clientId"
public static final String
"The OAuth/OIDC identity provider-issued client ID to uniquely identify the service account to use for authentication for this client. The value must be paired with a corresponding clientSecret value and is provided to the OAuth provider using the OAuth clientcredentials grant type."
public static final String
"clientSecret"
public static final String
"The OAuth/OIDC identity provider-issued client secret serves a similar function as a password to the clientId account and identifies the service account to use for authentication for this client. The value must be paired with a corresponding clientId value and is provided to the OAuth provider using the OAuth clientcredentials grant type."
public static final String
"scope"
public static final String
"The (optional) HTTP/HTTPS login request to the token endpoint (sasl.oauthbearer.token.endpoint.url) may need to specify an OAuth \"scope\". If so, the scope is used to provide the value to include with the login request."
-
Modifier and TypeConstant FieldValue
public static final String
"org.apache.kafka.connect.data.Date"
-
Modifier and TypeConstant FieldValue
public static final String
"org.apache.kafka.connect.data.Time"
-
Modifier and TypeConstant FieldValue
public static final String
"org.apache.kafka.connect.data.Timestamp"
-
Modifier and TypeConstant FieldValue
public static final String
"group"
public static final String
"offset"
public static final String
"metadata"
public static final String
"partition"
public static final String
"topic"
public static final String
"upstreamOffset"
public static final short
0
public static final String
"version"
-
Modifier and TypeConstant FieldValue
public static final String
"admin."
public static final String
"consumer."
public static final String
"forwarding.admin.class"
public static final String
"Class which extends ForwardingAdmin to define custom cluster resource management (topics, configs, etc). The class must have a constructor with signature <code>(Map<String, Object> config)</code> that is used to configure a KafkaAdminClient and may also be used to configure clients for external systems if necessary."
public static final String
"replication.policy.internal.topic.separator.enabled"
public static final String
"Whether to use replication.policy.separator to control the names of topics used for checkpoints and offset syncs. By default, custom separators are used in these topic names; however, if upgrading MirrorMaker 2 from older versions that did not allow for these topic names to be customized, it may be necessary to set this property to \'false\' in order to continue using the same names for those topics."
public static final String
"producer."
public static final String
"replication.policy.class"
public static final String
"replication.policy.separator"
public static final String
"."
-
Modifier and TypeConstant FieldValue
public static final String
"id"
public static final String
"multiple.schema"
public static final String
"name"
public static final String
"num.messages"
public static final String
"partition.count"
public static final String
"throughput"
public static final String
"topic"
-
Modifier and TypeConstant FieldValue
public static final String
"acceptable.recovery.lag"
public static final String
"admin."
public static final String
"application.id"
public static final String
"application.server"
public static final String
"at_least_once"
public static final String
"auto.include.jmx.reporter"
public static final String
"bootstrap.servers"
public static final String
"buffered.records.per.partition"
public static final String
"Maximum number of records to buffer per partition."
public static final String
"built.in.metrics.version"
public static final String
"cache.max.bytes.buffering"
public static final String
"Maximum number of memory bytes to be used for buffering across all threads"
public static final String
"client.id"
public static final String
"client.tag."
public static final String
"commit.interval.ms"
public static final String
"connections.max.idle.ms"
public static final String
"consumer."
public static final String
"default.client.supplier"
public static final String
"Client supplier class that implements the <code>org.apache.kafka.streams.KafkaClientSupplier</code> interface."
public static final String
"default.deserialization.exception.handler"
public static final String
"Exception handling class that implements the <code>org.apache.kafka.streams.errors.DeserializationExceptionHandler</code> interface."
public static final String
"rocksDB"
public static final String
"default.dsl.store"
public static final String
"The default state store type used by DSL operators."
public static final String
"default.key.serde"
public static final String
"default.production.exception.handler"
public static final String
"default.timestamp.extractor"
public static final String
"Default timestamp extractor class that implements the <code>org.apache.kafka.streams.processor.TimestampExtractor</code> interface."
public static final String
"default.value.serde"
public static final String
"default.windowed.key.serde.inner"
public static final String
"default.windowed.value.serde.inner"
public static final String
"dsl.store.suppliers.class"
public static final int
1
public static final String
"enable.metrics.push"
public static final String
"Whether to enable pushing of internal client metrics for (main, restore, and global) consumers, producers, and admin clients. The cluster must have a client metrics subscription which corresponds to a client."
public static final String
"exactly_once"
public static final String
"exactly_once_beta"
public static final String
"exactly_once_v2"
public static final String
"global.consumer."
public static final String
"in_memory"
public static final String
"log.summary.interval.ms"
public static final String
"main.consumer."
public static final int
20
public static final int
5
public static final int
30
public static final String
"max.task.idle.ms"
public static final long
-1L
public static final String
"This config controls whether joins and merges may produce out-of-order results. The config value is the maximum amount of time in milliseconds a stream task will stay idle when it is fully caught up on some (but not all) input partitions to wait for producers to send additional records and avoid potential out-of-order record processing across multiple input streams. The default (zero) does not wait for producers to send more records, but it does wait to fetch data that is already present on the brokers. This default means that for records that are already present on the brokers, Streams will process them in timestamp order. Set to -1 to disable idling entirely and process any locally available data, even though doing so may produce out-of-order processing."
public static final String
"max.warmup.replicas"
public static final String
"merge.repartition.topics"
public static final String
"metadata.max.age.ms"
public static final String
"metric.reporters"
public static final String
"latest"
public static final String
"metrics.num.samples"
public static final String
"metrics.recording.level"
public static final String
"metrics.sample.window.ms"
public static final String
"none"
public static final String
"num.standby.replicas"
public static final String
"num.stream.threads"
public static final String
"all"
public static final String
"poll.ms"
public static final String
"probing.rebalance.interval.ms"
public static final String
"processing.exception.handler"
public static final String
"Exception handling class that implements the <code>org.apache.kafka.streams.errors.ProcessingExceptionHandler</code> interface."
public static final String
"processing.guarantee"
public static final String
"producer."
public static final String
"rack.aware.assignment.non_overlap_cost"
public static final String
"balance_subtopology"
public static final String
"rack.aware.assignment.strategy"
public static final String
"The strategy we use for rack aware assignment. Rack aware assignment will take <code>client.rack</code> and <code>racks</code> of <code>TopicPartition</code> into account when assigning tasks to minimize cross rack traffic. Valid settings are : <code>none</code> (default), which will disable rack aware assignment; <code>min_traffic</code>, which will compute minimum cross rack traffic assignment; <code>balance_subtopology</code>, which will compute minimum cross rack traffic and try to balance the tasks of same subtopolgies across different clients"
public static final String
"min_traffic"
public static final String
"none"
public static final String
"rack.aware.assignment.tags"
public static final String
"rack.aware.assignment.traffic_cost"
public static final String
"receive.buffer.bytes"
public static final String
"reconnect.backoff.max.ms"
public static final String
"reconnect.backoff.ms"
public static final String
"repartition.purge.interval.ms"
public static final String
"replication.factor"
public static final String
"request.timeout.ms"
public static final String
"restore.consumer."
public static final String
"retries"
public static final String
"retry.backoff.ms"
public static final String
"reuse.ktable.source.topics"
public static final String
"rocksDB"
public static final String
"rocksdb.config.setter"
public static final String
"security.protocol"
public static final String
"send.buffer.bytes"
public static final String
"single.store.self.join"
public static final String
"state.cleanup.delay.ms"
public static final String
"state.dir"
public static final String
"statestore.cache.max.bytes"
public static final String
"Maximum number of memory bytes to be used for statestore cache across all threads"
public static final String
"task.assignor.class"
public static final String
"task.timeout.ms"
public static final String
"The maximum amount of time in milliseconds a task might stall due to internal errors and retries until an error is raised. For a timeout of 0ms, a task would raise an error for the first internal error. For any timeout larger than 0ms, a task will retry at least once before an error is raised."
public static final String
"topic."
public static final String
"topology.optimization"
public static final String
"topology.optimization"
public static final String
"upgrade.from"
public static final String
"window.size.ms"
public static final String
"windowstore.changelog.additional.retention.ms"
public static final String
"windowed.inner.class.serde"
-
Modifier and TypeConstant FieldValue
public static final String
"__assignment.listener__"
public static final String
"__emit.interval.ms.kstreams.outer.join.spurious.results.fix__"
public static final String
"__emit.interval.ms.kstreams.windowed.aggregation__"
public static final String
"internal.task.assignor.class"
public static final String
"__iq.consistency.offset.vector.enabled__"
public static final String
"__processing.threads.enabled__"
public static final String
"__reference.container.instance__"
public static final String
"__state.updater.enabled__"
public static final String
"__internal.override.topic.prefix__"
-
Modifier and TypeConstant FieldValue
public static final int
10
public static final int
1
-
Modifier and TypeConstant FieldValue
public static final int
1
public static final int
8
-
Modifier and TypeConstant FieldValue
public static final long
-9223372036854775808L
public static final long
-1L