Class KafkaChannelConfiguration
- Assembly
- DataDistributionManagerNet.dll
The configuration class for Kafka channel
public class KafkaChannelConfiguration : KafkaConfiguration, IConfiguration, INotifyPropertyChanged
- Inheritance
-
KafkaChannelConfiguration
- Implements
- Inherited Members
Constructors
KafkaChannelConfiguration(KafkaConfiguration)
Duplicates a configuration
public KafkaChannelConfiguration(KafkaConfiguration originalConf)
Parameters
originalConf
KafkaConfigurationIConfiguration to duplicate
Fields
AllowAutoCreateTopicsKey
Configuration key of AllowAutoCreateTopics
public const string AllowAutoCreateTopicsKey = "datadistributionmanager.kafka.globalconf.allow.auto.create.topics"
Field Value
ApiVersionFallbackKey
Configuration key of ApiVersionFallback
public const string ApiVersionFallbackKey = "datadistributionmanager.kafka.globalconf.api.version.fallback.ms"
Field Value
ApiVersionRequestKey
Configuration key of ApiVersionRequest
public const string ApiVersionRequestKey = "datadistributionmanager.kafka.globalconf.api.version.request"
Field Value
ApiVersionRequestTimeoutKey
Configuration key of ApiVersionRequestTimeout
public const string ApiVersionRequestTimeoutKey = "datadistributionmanager.kafka.globalconf.api.version.request.timeout.ms"
Field Value
AutoCommitIntervalKey
Configuration key of AutoCommitInterval
public const string AutoCommitIntervalKey = "datadistributionmanager.kafka.globalconf.auto.commit.interval.ms"
Field Value
AutoOffsetResetKey
Configuration key of AutoOffsetReset
public const string AutoOffsetResetKey = "datadistributionmanager.kafka.topicconf.auto.offset.reset"
Field Value
BatchNumMessagesKey
Configuration key of BatchNumMessages
public const string BatchNumMessagesKey = "datadistributionmanager.kafka.globalconf.batch.num.messages"
Field Value
BatchSizeKey
Configuration key of BatchSizeKey
public const string BatchSizeKey = "datadistributionmanager.kafka.globalconf.batch.size"
Field Value
BootstrapBrokersKey
Configuration key of BootstrapBrokers
public const string BootstrapBrokersKey = "datadistributionmanager.kafka.globalconf.metadata.broker.list"
Field Value
BrokerAddressFamilyKey
Configuration key of BrokerAddressFamily
public const string BrokerAddressFamilyKey = "datadistributionmanager.kafka.globalconf.broker.address.family"
Field Value
BrokerAddressTtlKey
Configuration key of BrokerAddressTtl
public const string BrokerAddressTtlKey = "datadistributionmanager.kafka.globalconf.broker.address.ttl"
Field Value
BrokerVersionFallbackKey
Configuration key of BrokerVersionFallback
public const string BrokerVersionFallbackKey = "datadistributionmanager.kafka.globalconf.broker.version.fallback"
Field Value
BuiltinFeaturesKey
Configuration key of BuiltinFeatures
public const string BuiltinFeaturesKey = "datadistributionmanager.kafka.globalconf.builtin.features"
Field Value
CheckCrcsKey
Configuration key of CheckCrcs
public const string CheckCrcsKey = "datadistributionmanager.kafka.globalconf.check.crcs"
Field Value
ClientIdKey
Configuration key of ClientId
public const string ClientIdKey = "datadistributionmanager.kafka.globalconf.client.id"
Field Value
ClientRackKey
Configuration key of ClientRack
public const string ClientRackKey = "datadistributionmanager.kafka.globalconf.client.rack"
Field Value
CompressionCodecKey
Configuration key of CompressionCodec
public const string CompressionCodecKey = "datadistributionmanager.kafka.globalconf.compression.codec"
Field Value
CompressionLevelKey
Configuration key of CompressionLevel
public const string CompressionLevelKey = "datadistributionmanager.kafka.topicconf.compression.level"
Field Value
ConnectionsMaxIdleKey
Configuration key of ConnectionsMaxIdle
public const string ConnectionsMaxIdleKey = "datadistributionmanager.kafka.globalconf.connections.max.idle.ms"
Field Value
ConsumeCallbackMaxMessagesKey
Configuration key of ConsumeCallbackMaxMessages
public const string ConsumeCallbackMaxMessagesKey = "datadistributionmanager.kafka.topicconf.consume.callback.max.messages"
Field Value
CoordinatorQueryIntervalKey
Configuration key of CoordinatorQueryInterval
public const string CoordinatorQueryIntervalKey = "datadistributionmanager.kafka.globalconf.coordinator.query.interval.ms"
Field Value
DebugKey
Configuration key of Debug
public const string DebugKey = "datadistributionmanager.kafka.globalconf.debug"
Field Value
DeliveryReportOnlyErrorKey
Configuration key of DeliveryReportOnlyError
public const string DeliveryReportOnlyErrorKey = "datadistributionmanager.kafka.globalconf.delivery.report.only.error"
Field Value
DumpMetadataKey
Configuration key of DumpMetadata
public const string DumpMetadataKey = "datadistributionmanager.kafka.topic_dumpmetadata"
Field Value
EnableAutoCommitKey
Configuration key of EnableAutoCommit
public const string EnableAutoCommitKey = "datadistributionmanager.kafka.globalconf.enable.auto.commit"
Field Value
EnableAutoOffsetStoreKey
Configuration key of EnableAutoOffsetStore
public const string EnableAutoOffsetStoreKey = "datadistributionmanager.kafka.globalconf.enable.auto.offset.store"
Field Value
EnableGaplessGuaranteeKey
Configuration key of EnableGaplessGuarantee
public const string EnableGaplessGuaranteeKey = "datadistributionmanager.kafka.globalconf.enable.gapless.guarantee"
Field Value
EnableIdempotenceKey
Configuration key of EnableIdempotence
public const string EnableIdempotenceKey = "datadistributionmanager.kafka.globalconf.enable.idempotence"
Field Value
EnablePartitionEofKey
Configuration key of EnablePartitionEof
public const string EnablePartitionEofKey = "datadistributionmanager.kafka.globalconf.enable.partition.eof"
Field Value
EnableRandomSeedKey
Configuration key of EnableRandomSeed
public const string EnableRandomSeedKey = "datadistributionmanager.kafka.globalconf.enable.random.seed"
Field Value
EnableSaslOauthbearerUnsecureJwtKey
Configuration key of EnableSaslOauthbearerUnsecureJwt
public const string EnableSaslOauthbearerUnsecureJwtKey = "datadistributionmanager.kafka.globalconf.enable.sasl.oauthbearer.unsecure.jwt"
Field Value
EnableSslCertificateVerificationKey
Configuration key of EnableSslCertificateVerification
public const string EnableSslCertificateVerificationKey = "datadistributionmanager.kafka.globalconf.enable.ssl.certificate.verification"
Field Value
FetchErrorBackoffKey
Configuration key of FetchErrorBackoff
public const string FetchErrorBackoffKey = "datadistributionmanager.kafka.globalconf.fetch.error.backoff.ms"
Field Value
FetchMaxBytesKey
Configuration key of FetchMaxBytes
public const string FetchMaxBytesKey = "datadistributionmanager.kafka.globalconf.fetch.max.bytes"
Field Value
FetchMessageMaxBytesKey
Configuration key of FetchMessageMaxBytes
public const string FetchMessageMaxBytesKey = "datadistributionmanager.kafka.globalconf.fetch.message.max.bytes"
Field Value
FetchMinBytesKey
Configuration key of FetchMinBytes
public const string FetchMinBytesKey = "datadistributionmanager.kafka.globalconf.fetch.min.bytes"
Field Value
FetchWaitMaxKey
Configuration key of FetchWaitMax
public const string FetchWaitMaxKey = "datadistributionmanager.kafka.globalconf.fetch.wait.max.ms"
Field Value
GroupIdKey
Configuration key of GroupId
public const string GroupIdKey = "datadistributionmanager.kafka.globalconf.group.id"
Field Value
GroupInstanceIdKey
Configuration key of GroupInstanceId
public const string GroupInstanceIdKey = "datadistributionmanager.kafka.globalconf.group.instance.id"
Field Value
GroupProtocolTypeKey
Configuration key of GroupProtocolType
public const string GroupProtocolTypeKey = "datadistributionmanager.kafka.globalconf.group.protocol.type"
Field Value
HeartbeatIntervalKey
Configuration key of HeartbeatInterval
public const string HeartbeatIntervalKey = "datadistributionmanager.kafka.globalconf.heartbeat.interval.ms"
Field Value
IntervalTerminationSignalKey
Configuration key of IntervalTerminationSignal
public const string IntervalTerminationSignalKey = "datadistributionmanager.kafka.globalconf.internal.termination.signal"
Field Value
IsolationLevelKey
Configuration key of IsolationLevel
public const string IsolationLevelKey = "datadistributionmanager.kafka.globalconf.isolation.level"
Field Value
KafkaGlobalConfigurationBasePropertyKey
Base property name of all specific configuration key of KafkaConfiguration for global configuration
public const string KafkaGlobalConfigurationBasePropertyKey = "datadistributionmanager.kafka.globalconf."
Field Value
KafkaTopicConfigurationBasePropertyKey
Base property name of all specific configuration key of KafkaConfiguration for topic configuration
public const string KafkaTopicConfigurationBasePropertyKey = "datadistributionmanager.kafka.topicconf."
Field Value
LogConnectionCloseKey
Configuration key of LogConnectionClose
public const string LogConnectionCloseKey = "datadistributionmanager.kafka.globalconf.log.connection.close"
Field Value
LogLevelKey
Configuration key of LogLevel
public const string LogLevelKey = "datadistributionmanager.kafka.globalconf.log_level"
Field Value
LogQueueKey
Configuration key of LogQueue
public const string LogQueueKey = "datadistributionmanager.kafka.globalconf.log.queue"
Field Value
LogThreadNameKey
Configuration key of LogThreadName
public const string LogThreadNameKey = "datadistributionmanager.kafka.globalconf.log.thread.name"
Field Value
MaxInFlightRequestsPerConnectionKey
Configuration key of MaxInFlightRequestsPerConnection
public const string MaxInFlightRequestsPerConnectionKey = "datadistributionmanager.kafka.globalconf.max.in.flight.requests.per.connection"
Field Value
MaxPollIntervalKey
Configuration key of MaxPollInterval
public const string MaxPollIntervalKey = "datadistributionmanager.kafka.globalconf.max.poll.interval.ms"
Field Value
MessageCopyMaxBytesKey
Configuration key of MessageCopyMaxBytes
public const string MessageCopyMaxBytesKey = "datadistributionmanager.kafka.globalconf.message.copy.max.bytes"
Field Value
MessageMaxBytesKey
Configuration key of MessageMaxBytes
public const string MessageMaxBytesKey = "datadistributionmanager.kafka.globalconf.message.max.bytes"
Field Value
MessageSendMaxRetriesKey
Configuration key of MessageSendMaxRetries
public const string MessageSendMaxRetriesKey = "datadistributionmanager.kafka.globalconf.message.send.max.retries"
Field Value
MessageTimeoutKey
Configuration key of MessageTimeout
public const string MessageTimeoutKey = "datadistributionmanager.kafka.topicconf.message.timeout.ms"
Field Value
MetadataMaxAgeKey
Configuration key of MetadataMaxAge
public const string MetadataMaxAgeKey = "datadistributionmanager.kafka.globalconf.metadata.max.age.ms"
Field Value
MetadataRequestTimeoutKey
Configuration key of MetadataRequestTimeout
public const string MetadataRequestTimeoutKey = "datadistributionmanager.kafka.globalconf.metadata.request.timeout.ms"
Field Value
PartitionAssignmentStrategyKey
Configuration key of PartitionAssignmentStrategy
public const string PartitionAssignmentStrategyKey = "datadistributionmanager.kafka.globalconf.partition.assignment.strategy"
Field Value
PartitionerKey
Configuration key of Partitioner
public const string PartitionerKey = "datadistributionmanager.kafka.topicconf.partitioner"
Field Value
PluginLibraryPathsKey
Configuration key of PluginLibraryPaths
public const string PluginLibraryPathsKey = "datadistributionmanager.kafka.globalconf.plugin.library.paths"
Field Value
QueueBufferingBackpressureThresholdKey
Configuration key of QueueBufferingBackpressureThreshold
public const string QueueBufferingBackpressureThresholdKey = "datadistributionmanager.kafka.globalconf.queue.buffering.backpressure.threshold"
Field Value
QueueBufferingMaxKbKey
Configuration key of QueueBufferingMaxKb
public const string QueueBufferingMaxKbKey = "datadistributionmanager.kafka.globalconf.queue.buffering.max.kbytes"
Field Value
QueueBufferingMaxMessagesKey
Configuration key of QueueBufferingMaxMessages
public const string QueueBufferingMaxMessagesKey = "datadistributionmanager.kafka.globalconf.queue.buffering.max.messages"
Field Value
QueueBufferingMaxMsKey
Configuration key of QueueBufferingMaxMs
public const string QueueBufferingMaxMsKey = "datadistributionmanager.kafka.globalconf.queue.buffering.max.ms"
Field Value
QueuedMaxMessagesKbKey
Configuration key of QueuedMaxMessagesKb
public const string QueuedMaxMessagesKbKey = "datadistributionmanager.kafka.globalconf.queued.max.messages.kbytes"
Field Value
QueuedMinMessagesKey
Configuration key of QueuedMinMessages
public const string QueuedMinMessagesKey = "datadistributionmanager.kafka.globalconf.queued.min.messages"
Field Value
QueueingStrategyKey
Configuration key of QueueingStrategy
public const string QueueingStrategyKey = "datadistributionmanager.kafka.topicconf.queuing.strategy"
Field Value
ReceiveMessageMaxBytesKey
Configuration key of ReceiveMessageMaxBytes
public const string ReceiveMessageMaxBytesKey = "datadistributionmanager.kafka.globalconf.receive.message.max.bytes"
Field Value
ReconnectBackoffKey
Configuration key of ReconnectBackoff
public const string ReconnectBackoffKey = "datadistributionmanager.kafka.globalconf.reconnect.backoff.ms"
Field Value
ReconnectBackoffMaxKey
Configuration key of ReconnectBackoffMax
public const string ReconnectBackoffMaxKey = "datadistributionmanager.kafka.globalconf.reconnect.backoff.max.ms"
Field Value
ReplicationFactorKey
Configuration key of ReplicationFactor
public const string ReplicationFactorKey = "datadistributionmanager.kafka.topic_replicationfactor"
Field Value
RequestRequiredAcksKey
Configuration key of RequestRequiredAcks
public const string RequestRequiredAcksKey = "datadistributionmanager.kafka.topicconf.request.required.acks"
Field Value
RequestTimeoutKey
Configuration key of RequestTimeout
public const string RequestTimeoutKey = "datadistributionmanager.kafka.topicconf.request.timeout.ms"
Field Value
RetryBackoffKey
Configuration key of RetryBackoff
public const string RetryBackoffKey = "datadistributionmanager.kafka.globalconf.retry.backoff.ms"
Field Value
SaslKerberosKeytabKey
Configuration key of SaslKerberosKeytab
public const string SaslKerberosKeytabKey = "datadistributionmanager.kafka.globalconf.sasl.kerberos.keytab"
Field Value
SaslKerberosKinitCmdKey
Configuration key of SaslKerberosKinitCmd
public const string SaslKerberosKinitCmdKey = "datadistributionmanager.kafka.globalconf.sasl.kerberos.kinit.cmd"
Field Value
SaslKerberosMinTimeBeforeReloginKey
Configuration key of SaslKerberosMinTimeBeforeRelogin
public const string SaslKerberosMinTimeBeforeReloginKey = "datadistributionmanager.kafka.globalconf.sasl.kerberos.min.time.before.relogin"
Field Value
SaslKerberosPrincipalKey
Configuration key of SaslKerberosPrincipal
public const string SaslKerberosPrincipalKey = "datadistributionmanager.kafka.globalconf.sasl.kerberos.principal"
Field Value
SaslKerberosServiceNameKey
Configuration key of SaslKerberosServiceName
public const string SaslKerberosServiceNameKey = "datadistributionmanager.kafka.globalconf.sasl.kerberos.service.name"
Field Value
SaslMechanismKey
Configuration key of SaslMechanism
public const string SaslMechanismKey = "datadistributionmanager.kafka.globalconf.sasl.mechanisms"
Field Value
SaslOauthbearerClientIdKey
Configuration key of SaslOauthbearerClientId
public const string SaslOauthbearerClientIdKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.client.id"
Field Value
SaslOauthbearerClientSecretKey
Configuration key of SaslOauthbearerClientSecret
public const string SaslOauthbearerClientSecretKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.client.secret"
Field Value
SaslOauthbearerConfigKey
Configuration key of SaslOauthbearerConfig
public const string SaslOauthbearerConfigKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.config"
Field Value
SaslOauthbearerExtensionsKey
Configuration key of SaslOauthbearerExtensions
public const string SaslOauthbearerExtensionsKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.extensions"
Field Value
SaslOauthbearerMethodKey
Configuration key of SaslOauthbearerMethod
public const string SaslOauthbearerMethodKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.method"
Field Value
SaslOauthbearerScopeKey
Configuration key of SaslOauthbearerScope
public const string SaslOauthbearerScopeKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.scope"
Field Value
SaslOauthbearerTokenEndpointUrlKey
Configuration key of SaslOauthbearerTokenEndpointUrl
public const string SaslOauthbearerTokenEndpointUrlKey = "datadistributionmanager.kafka.globalconf.sasl.oauthbearer.token.endpoint.url"
Field Value
SaslPasswordKey
Configuration key of SaslPassword
public const string SaslPasswordKey = "datadistributionmanager.kafka.globalconf.sasl.password"
Field Value
SaslUsernameKey
Configuration key of SaslUsername
public const string SaslUsernameKey = "datadistributionmanager.kafka.globalconf.sasl.username"
Field Value
SecurityProtocolKey
Configuration key of SecurityProtocol
public const string SecurityProtocolKey = "datadistributionmanager.kafka.globalconf.security.protocol"
Field Value
SessionTimeoutKey
Configuration key of SessionTimeout
public const string SessionTimeoutKey = "datadistributionmanager.kafka.globalconf.session.timeout.ms"
Field Value
SocketConnectionSetupTimeoutKey
Configuration key of SocketConnectionSetupTimeout
public const string SocketConnectionSetupTimeoutKey = "datadistributionmanager.kafka.globalconf.socket.connection.setup.timeout.ms"
Field Value
SocketKeepaliveEnableKey
Configuration key of SocketKeepaliveEnable
public const string SocketKeepaliveEnableKey = "datadistributionmanager.kafka.globalconf.socket.keepalive.enable"
Field Value
SocketMaxFailsKey
Configuration key of SocketMaxFails
public const string SocketMaxFailsKey = "datadistributionmanager.kafka.globalconf.socket.max.fails"
Field Value
SocketNagleDisableKey
Configuration key of SocketNagleDisable
public const string SocketNagleDisableKey = "datadistributionmanager.kafka.globalconf.socket.nagle.disable"
Field Value
SocketReceiveBufferBytesKey
Configuration key of SocketReceiveBufferBytes
public const string SocketReceiveBufferBytesKey = "datadistributionmanager.kafka.globalconf.socket.receive.buffer.bytes"
Field Value
SocketSendBufferBytesKey
Configuration key of SocketSendBufferBytes
public const string SocketSendBufferBytesKey = "datadistributionmanager.kafka.globalconf.socket.send.buffer.bytes"
Field Value
SocketTimeoutKey
Configuration key of SocketTimeout
public const string SocketTimeoutKey = "datadistributionmanager.kafka.globalconf.socket.timeout.ms"
Field Value
SslCACertificateStoresKey
Configuration key of SslCACertificateStores
public const string SslCACertificateStoresKey = "datadistributionmanager.kafka.globalconf.ssl.ca.certificate.stores"
Field Value
SslCAKey
Configuration key of SslCA
public const string SslCAKey = "datadistributionmanager.kafka.globalconf.ssl_ca"
Field Value
SslCALocationKey
Configuration key of SslCALocation
public const string SslCALocationKey = "datadistributionmanager.kafka.globalconf.ssl.ca.location"
Field Value
SslCAPemKey
Configuration key of SslCAPem
public const string SslCAPemKey = "datadistributionmanager.kafka.globalconf.ssl.ca.pem"
Field Value
SslCertificateKey
Configuration key of SslCertificate
public const string SslCertificateKey = "datadistributionmanager.kafka.globalconf.ssl_certificate"
Field Value
SslCertificateLocationKey
Configuration key of SslCertificateLocation
public const string SslCertificateLocationKey = "datadistributionmanager.kafka.globalconf.ssl.certificate.location"
Field Value
SslCertificatePemKey
Configuration key of SslCertificatePem
public const string SslCertificatePemKey = "datadistributionmanager.kafka.globalconf.ssl.certificate.pem"
Field Value
SslCipherSuitesKey
Configuration key of SslCipherSuites
public const string SslCipherSuitesKey = "datadistributionmanager.kafka.globalconf.ssl.cipher.suites"
Field Value
SslCrlLocationKey
Configuration key of SslCrlLocation
public const string SslCrlLocationKey = "datadistributionmanager.kafka.globalconf.ssl.crl.location"
Field Value
SslCurvesListKey
Configuration key of SslCurvesList
public const string SslCurvesListKey = "datadistributionmanager.kafka.globalconf.ssl.curves.list"
Field Value
SslEndpointIdentificationAlgorithmKey
Configuration key of SslEndpointIdentificationAlgorithm
public const string SslEndpointIdentificationAlgorithmKey = "datadistributionmanager.kafka.globalconf.ssl.endpoint.identification.algorithm"
Field Value
SslEngineIdKey
Configuration key of SslEngineId
public const string SslEngineIdKey = "datadistributionmanager.kafka.globalconf.ssl.engine.id"
Field Value
SslEngineLocationKey
Configuration key of SslEngineLocation
public const string SslEngineLocationKey = "datadistributionmanager.kafka.globalconf.ssl.engine.location"
Field Value
SslKeyKey
Configuration key of SslKey
public const string SslKeyKey = "datadistributionmanager.kafka.globalconf.ssl_key"
Field Value
SslKeyLocationKey
Configuration key of SslKeyLocation
public const string SslKeyLocationKey = "datadistributionmanager.kafka.globalconf.ssl.key.location"
Field Value
SslKeyPasswordKey
Configuration key of SslKeyPassword
public const string SslKeyPasswordKey = "datadistributionmanager.kafka.globalconf.ssl.key.password"
Field Value
SslKeyPemKey
Configuration key of SslKeyPem
public const string SslKeyPemKey = "datadistributionmanager.kafka.globalconf.ssl.key.pem"
Field Value
SslKeystoreLocationKey
Configuration key of SslKeystoreLocation
public const string SslKeystoreLocationKey = "datadistributionmanager.kafka.globalconf.ssl.keystore.location"
Field Value
SslKeystorePasswordKey
Configuration key of SslKeystorePassword
public const string SslKeystorePasswordKey = "datadistributionmanager.kafka.globalconf.ssl.keystore.password"
Field Value
SslSisalgsListKey
Configuration key of SslSisalgsList
public const string SslSisalgsListKey = "datadistributionmanager.kafka.globalconf.ssl.sigalgs.list"
Field Value
StatisticsIntervalKey
Configuration key of StatisticsInterval
public const string StatisticsIntervalKey = "datadistributionmanager.kafka.globalconf.statistics.interval.ms"
Field Value
StickyPartitioningLingerKey
Configuration key of StickyPartitioningLinger
public const string StickyPartitioningLingerKey = "datadistributionmanager.kafka.globalconf.sticky.partitioning.linger.ms"
Field Value
TopicBlackListKey
Configuration key of TopicBlackList
public const string TopicBlackListKey = "datadistributionmanager.kafka.globalconf.topic.blacklist"
Field Value
TopicCompressionCodecKey
Configuration key of TopicCompressionCodec
public const string TopicCompressionCodecKey = "datadistributionmanager.kafka.topicconf.compression.codec"
Field Value
TopicCreateKey
Configuration key of TopicCreate
public const string TopicCreateKey = "datadistributionmanager.kafka.topic_create"
Field Value
TopicMetadataPropagationMaxKey
Configuration key of TopicMetadataPropagationMax
public const string TopicMetadataPropagationMaxKey = "datadistributionmanager.kafka.globalconf.topic.metadata.propagation.max.ms"
Field Value
TopicMetadataRefreshFastIntervalKey
Configuration key of TopicMetadataRefreshFastInterval
public const string TopicMetadataRefreshFastIntervalKey = "datadistributionmanager.kafka.globalconf.topic.metadata.refresh.fast.interval.ms"
Field Value
TopicMetadataRefreshIntervalKey
Configuration key of TopicMetadataRefreshInterval
public const string TopicMetadataRefreshIntervalKey = "datadistributionmanager.kafka.globalconf.topic.metadata.refresh.interval.ms"
Field Value
TopicMetadataRefreshSparseKey
Configuration key of TopicMetadataRefreshSparse
public const string TopicMetadataRefreshSparseKey = "datadistributionmanager.kafka.globalconf.topic.metadata.refresh.sparse"
Field Value
TransactionTimeoutKey
Configuration key of TransactionTimeout
public const string TransactionTimeoutKey = "datadistributionmanager.kafka.globalconf.transaction.timeout.ms"
Field Value
TransactionalIdKey
Configuration key of TransactionalId
public const string TransactionalIdKey = "datadistributionmanager.kafka.globalconf.transactional.id"
Field Value
TransactionsEnabledKey
Configuration key of TransactionsEnabled
public const string TransactionsEnabledKey = "datadistributionmanager.kafka.transactions.enable"
Field Value
TransactionsTimeoutKey
Configuration key of TransactionsTimeout
public const string TransactionsTimeoutKey = "datadistributionmanager.kafka.transactions.timeout"
Field Value
Properties
AllowAutoCreateTopics
Allow automatic topic creation on the broker when subscribing to or assigning non-existent topics. The broker must also be configured with auto.create.topics.enable=true
for this configuraiton to take effect. Note: The default value (false) is different from the Java consumer (true). Requires broker version >= 0.11.0.0, for older broker versions only the broker configuration applies.
public bool AllowAutoCreateTopics { get; set; }
Property Value
ApiVersionFallback
Dictates how long the broker.version.fallback
fallback is used in the case the ApiVersionRequest fails. NOTE: The ApiVersionRequest is only issued when a new connection to the broker is made (such as after an upgrade).
public int ApiVersionFallback { get; set; }
Property Value
- int
0 .. 604800000
ApiVersionRequest
Request broker's supported API versions to adjust functionality to available protocol features. If set to false, or the ApiVersionRequest fails, the fallback version broker.version.fallback
will be used. NOTE: Depends on broker version >=0.10.0. If the request is not supported by (an older) broker the broker.version.fallback
fallback is used.
public bool ApiVersionRequest { get; set; }
Property Value
ApiVersionRequestTimeout
Timeout for broker API version requests.
public int ApiVersionRequestTimeout { get; set; }
Property Value
- int
1 .. 300000
AutoCommitInterval
The frequency in milliseconds that the consumer offsets are committed (written) to offset storage. (0 = disable). This setting is used by the high-level consumer.
public int AutoCommitInterval { get; set; }
Property Value
- int
0 .. 86400000
AutoOffsetReset
Action to take when there is no initial offset in offset store or the desired offset is out of range: smallest,earliest - automatically reset the offset to the smallest offset, largest,latest - automatically reset the offset to the largest offset, error - trigger an error (ERR__AUTO_OFFSET_RESET) which is retrieved by consuming messages and checking 'message->err'.
public AutoOffsetResetType AutoOffsetReset { get; set; }
Property Value
BatchNumMessages
Maximum number of messages batched in one MessageSet. The total MessageSet size is also limited by BatchSize and MessageMaxBytes.
public int BatchNumMessages { get; set; }
Property Value
- int
1 .. 1000000
BatchSize
Maximum size (in bytes) of all messages batched in one MessageSet, including protocol framing overhead. This limit is applied after the first message has been added to the batch, regardless of the first message's size, this is to ensure that messages that exceed batch.size are produced. The total MessageSet size is also limited by BatchNumMessages and MessageMaxBytes.
public int BatchSize { get; set; }
Property Value
- int
1 .. 2147483647
BootstrapBrokers
The bootstrap broker(s) to be used as Comma Separated Value(s)
public string BootstrapBrokers { get; set; }
Property Value
BrokerAddressFamily
Allowed broker IP address families: any, v4, v6
public BrokerAddressFamilyType BrokerAddressFamily { get; set; }
Property Value
BrokerAddressTtl
How long to cache the broker address resolving results (milliseconds).
public int BrokerAddressTtl { get; set; }
Property Value
- int
0 .. 86400000
BrokerVersionFallback
Older broker versions (before 0.10.0) provide no way for a client to query for supported protocol features (ApiVersionRequest, see api.version.request
) making it impossible for the client to know what features it may use. As a workaround a user may set this property to the expected broker version and the client will automatically adjust its feature set accordingly if the ApiVersionRequest fails (or is disabled). The fallback broker version will be used for api.version.fallback.ms
. Valid values are: 0.9.0, 0.8.2, 0.8.1, 0.8.0. Any other value >= 0.10, such as 0.10.2.1, enables ApiVersionRequests.
public string BrokerVersionFallback { get; set; }
Property Value
BuiltinFeatures
Indicates the builtin features for this build of librdkafka. An application can either query this value or attempt to set it with its list of required features to check for library support.
public BuiltinFeaturesType BuiltinFeatures { get; set; }
Property Value
CheckCrcs
Verify CRC32 of consumed messages, ensuring no on-the-wire or on-disk corruption to the messages occurred. This check comes at slightly increased CPU usage.
public bool CheckCrcs { get; set; }
Property Value
ClientId
The client id to be used
public string ClientId { get; set; }
Property Value
ClientRack
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
.
public string ClientRack { get; set; }
Property Value
CompressionCodec
Compression codec to use for compressing message sets. This is the default value for all topics, may be overridden by the topic configuration property compression.codec
.
public CompressionCodecType CompressionCodec { get; set; }
Property Value
CompressionLevel
Compression level parameter for algorithm selected by configuration property CompressionCodec. Higher values will result in better compression at the cost of more CPU usage. Usable range is algorithm-dependent: [0-9] for gzip; [0-12] for lz4; only 0 for snappy; -1 = codec-dependent default compression level.
public int CompressionLevel { get; set; }
Property Value
- int
0 .. 2147483647
Configuration
The configuration parameters to use written as key=value
public override string[] Configuration { get; }
Property Value
- string[]
The list of key/value pairs
ConnectionsMaxIdle
Close broker connections after the specified time of inactivity. Disable with 0. If this property is left at its default value some heuristics are performed to determine a suitable default value, this is currently limited to identifying brokers on Azure (see librdkafka issue #3109 for more info).
public int ConnectionsMaxIdle { get; set; }
Property Value
- int
0 .. 2147483647
ConsumeCallbackMaxMessages
Maximum number of messages to dispatch in one rd_kafka_consume_callback*()
call (0 = unlimited)
public int ConsumeCallbackMaxMessages { get; set; }
Property Value
- int
0 .. 1000000
CoordinatorQueryInterval
How often to query for the current client group coordinator. If the currently assigned coordinator is down the configured query interval will be divided by ten to more quickly recover in case of coordinator reassignment.
public int CoordinatorQueryInterval { get; set; }
Property Value
- int
1 .. 3600000
Debug
A comma-separated list of debug contexts to enable. Detailed Producer debugging: broker,topic,msg. Consumer: consumer,cgrp,topic,fetch
public DebugType Debug { get; set; }
Property Value
DeliveryReportOnlyError
Only provide delivery reports for failed messages.
public bool DeliveryReportOnlyError { get; set; }
Property Value
DumpMetadata
True to dump metadata
public bool DumpMetadata { get; set; }
Property Value
EnableAutoCommit
Automatically and periodically commit offsets in the background. Note: setting this to false does not prevent the consumer from fetching previously committed start offsets. To circumvent this behaviour set specific start offsets per partition in the call to assign().
public bool EnableAutoCommit { get; set; }
Property Value
- bool
1 .. 86400000
EnableAutoOffsetStore
Automatically store offset of last message provided to application. The offset store is an in-memory store of the next offset to (auto-)commit for each partition.
public bool EnableAutoOffsetStore { get; set; }
Property Value
EnableGaplessGuarantee
When set to true
, any error that could result in a gap in the produced message series when a batch of messages fails, will raise a fatal error (ERR__GAPLESS_GUARANTEE) and stop the producer. Messages failing due to MessageTimeout are not covered by this guarantee. Requires EnableIdempotence to true.
public bool EnableGaplessGuarantee { get; set; }
Property Value
Remarks
EXPERIMENTAL: subject to change or removal.
EnableIdempotence
When set to true
, the producer will ensure that messages are successfully produced exactly once and in the original produce order. The following configuration properties are adjusted automatically (if not modified by the user) when idempotence is enabled: MaxInFlightRequestsPerConnection to 5 (must be less than or equal to 5), MessageSendMaxRetries to MaxValue (must be greater than 0), RequestRequiredAcks to all, QueueingStrategy queuing.strategy=fifo
. Producer instantation will fail if user-supplied configuration is incompatible.
public bool EnableIdempotence { get; set; }
Property Value
EnablePartitionEof
Emit RD_KAFKA_RESP_ERR__PARTITION_EOF event whenever the consumer reaches the end of a partition.
public bool EnablePartitionEof { get; set; }
Property Value
EnableRandomSeed
If enabled librdkafka will initialize the PRNG with srand(current_time.milliseconds) on the first invocation of rd_kafka_new() (required only if rand_r() is not available on your platform). If disabled the application must call srand() prior to calling rd_kafka_new().
public bool EnableRandomSeed { get; set; }
Property Value
EnableSaslOauthbearerUnsecureJwt
Enable the builtin unsecure JWT OAUTHBEARER token handler if no oauthbearer_refresh_cb has been set. This builtin handler should only be used for development or testing, and not in production.
public bool EnableSaslOauthbearerUnsecureJwt { get; set; }
Property Value
EnableSslCertificateVerification
Enable OpenSSL's builtin broker (server) certificate verification. This verification can be extended by the application by implementing a certificate_verify_cb.
public bool EnableSslCertificateVerification { get; set; }
Property Value
FetchErrorBackoff
How long to postpone the next fetch request for a topic+partition in case of a fetch error.
public int FetchErrorBackoff { get; set; }
Property Value
- int
0 .. 300000
FetchMaxBytes
Maximum amount of data the broker shall return for a Fetch request. Messages are fetched in batches by the consumer and if the first message batch in the first non-empty partition of the Fetch request is larger than this value, then the message batch will still be returned to ensure the consumer can make progress. The maximum message batch size accepted by the broker is defined via MessageMaxBytes (broker config) or MessageMaxBytes (broker topic config). FetchMaxBytes is automatically adjusted upwards to be at least MessageMaxBytes (consumer config).
public int FetchMaxBytes { get; set; }
Property Value
- int
0 .. 2147483135
FetchMessageMaxBytes
Initial maximum number of bytes per topic+partition to request when fetching messages from the broker. If the client encounters a message larger than this value it will gradually try to increase it until the entire message can be fetched.
public int FetchMessageMaxBytes { get; set; }
Property Value
- int
1 .. 1000000000
FetchMinBytes
Minimum number of bytes the broker responds with. If FetchWaitMax expires the accumulated data will be sent to the client regardless of this setting.
public int FetchMinBytes { get; set; }
Property Value
- int
1 .. 100000000
FetchWaitMax
Maximum time the broker may wait to fill the Fetch response with fetch.min.bytes of messages.
public int FetchWaitMax { get; set; }
Property Value
- int
0 .. 300000
GroupId
The group id to be used
public string GroupId { get; set; }
Property Value
GroupInstanceId
Enable static group membership. Static group members are able to leave and rejoin a group within the configured SessionTimeout without prompting a group rebalance. This should be used in combination with a larger SessionTimeout to avoid group rebalances caused by transient unavailability (e.g. process restarts). Requires broker version >= 2.3.0.
public string GroupInstanceId { get; set; }
Property Value
GroupProtocolType
Group protocol type. NOTE: Currently, the only supported group protocol type is 'consumer'.
public string GroupProtocolType { get; set; }
Property Value
HeartbeatInterval
Group session keepalive heartbeat interval.
public int HeartbeatInterval { get; set; }
Property Value
- int
1 .. 3600000
IntervalTerminationSignal
Signal that librdkafka will use to quickly terminate on rd_kafka_destroy(). If this signal is not set then there will be a delay before rd_kafka_wait_destroyed() returns true as internal threads are timing out their system calls. If this signal is set however the delay will be minimal. The application should mask this signal as an internal signal handler is installed.
public int IntervalTerminationSignal { get; set; }
Property Value
- int
0 .. 128
IsolationLevel
Controls how to read messages written transactionally: read_committed - only return transactional messages which have been committed. read_uncommitted - return all messages, even transactional messages which have been aborted.
public IsolationLevelType IsolationLevel { get; set; }
Property Value
this[KafkaConfigurationType, string]
Generic setter/getter for all configuration properties related to librdkafka (see https://github.com/edenhill/librdkafka/blob/master/CONFIGURATION.md)
public string this[KafkaConfigurationType type, string property] { get; set; }
Parameters
type
KafkaConfigurationTypeKafkaConfigurationType to set
property
stringThe property name
Property Value
- string
The property value
LogConnectionClose
Log broker disconnects. It might be useful to turn this off when interacting with 0.9 brokers with an aggressive connection.max.idle.ms
value.
public bool LogConnectionClose { get; set; }
Property Value
LogLevel
Logging level (syslog(3) levels)
public int LogLevel { get; set; }
Property Value
- int
0 .. 7
LogQueue
Disable spontaneous log_cb from internal librdkafka threads, instead enqueue log messages on queue set with rd_kafka_set_log_queue()
and serve log callbacks or events through the standard poll APIs. NOTE: Log messages will linger in a temporary queue until the log queue has been set.
public bool LogQueue { get; set; }
Property Value
LogThreadName
Print internal thread name in log messages (useful for debugging librdkafka internals)
public bool LogThreadName { get; set; }
Property Value
MaxInFlightRequestsPerConnection
Maximum number of in-flight requests per broker connection. This is a generic property applied to all broker communication, however it is primarily relevant to produce requests. In particular, note that other mechanisms limit the number of outstanding consumer fetch request per broker to one.
public uint MaxInFlightRequestsPerConnection { get; set; }
Property Value
- uint
1 .. 1000000
MaxPollInterval
Maximum allowed time between calls to consume messages (e.g., rd_kafka_consumer_poll()) for high-level consumers. If this interval is exceeded the consumer is considered failed and the group will rebalance in order to reassign the partitions to another consumer group member. Warning: Offset commits may be not possible at this point. Note: It is recommended to set EnableAutoOffsetStore to false for long-time processing applications and then explicitly store offsets (using offsets_store()) after message processing, to make sure offsets are not auto-committed prior to processing has finished. The interval is checked two times per second. See KIP-62 for more information.
public int MaxPollInterval { get; set; }
Property Value
- int
1 .. 86400000
MessageCopyMaxBytes
Maximum size for message to be copied to buffer. Messages larger than this will be passed by reference (zero-copy) at the expense of larger iovecs.
public uint MessageCopyMaxBytes { get; set; }
Property Value
- uint
0 .. 1000000000
MessageMaxBytes
Maximum Kafka protocol request message size. Due to differing framing overhead between protocol versions the producer is unable to reliably enforce a strict max message limit at produce time and may exceed the maximum size by one message in protocol ProduceRequests, the broker will enforce the the topic's max.message.bytes
limit (see Apache Kafka documentation).
public uint MessageMaxBytes { get; set; }
Property Value
- uint
1000 .. 1000000000
MessageSendMaxRetries
How many times to retry sending a failing Message. Note: retrying may cause reordering unless EnableIdempotence is set to true.
public int MessageSendMaxRetries { get; set; }
Property Value
- int
0 .. 2147483647
MessageTimeout
Local message timeout. This value is only enforced locally and limits the time a produced message waits for successful delivery. A time of 0 is infinite. This is the maximum time librdkafka may use to deliver a message (including retries). Delivery error occurs when either the retry count or the message timeout are exceeded. The message timeout is automatically adjusted to TransactionTimeout if TransactionalId is configured.
public int MessageTimeout { get; set; }
Property Value
- int
0 .. 2147483647
MetadataMaxAge
Metadata cache max age. Defaults to TopicMetadataRefreshInterval * 3
public int MetadataMaxAge { get; set; }
Property Value
- int
1 .. 86400000
MetadataRequestTimeout
Non-topic request timeout in milliseconds. This is for metadata requests, etc.
public uint MetadataRequestTimeout { get; set; }
Property Value
- uint
10 .. 900000
PartitionAssignmentStrategy
The name of one or more partition assignment strategies. The elected group leader will use a strategy supported by all members of the group to assign partitions to group members. If there is more than one eligible strategy, preference is determined by the order of this list (strategies earlier in the list have higher priority). Cooperative and non-cooperative (eager) strategies must not be mixed. Available strategies: range, roundrobin, cooperative-sticky.
public PartitionAssignmentStrategyType PartitionAssignmentStrategy { get; set; }
Property Value
Partitioner
Partitioner: PartitionerType
public PartitionerType Partitioner { get; set; }
Property Value
PluginLibraryPaths
List of plugin libraries to load (; separated). The library search path is platform dependent (see dlopen(3) for Unix and LoadLibrary() for Windows). If no filename extension is specified the platform-specific extension (such as .dll or .so) will be appended automatically.
public string PluginLibraryPaths { get; set; }
Property Value
QueueBufferingBackpressureThreshold
The threshold of outstanding not yet transmitted broker requests needed to backpressure the producer's message accumulator. If the number of not yet transmitted requests equals or exceeds this number, produce request creation that would have otherwise been triggered (for example, in accordance with QueueBufferingMaxMs) will be delayed. A lower number yields larger and more effective batches. A higher value can improve latency when using compression on slow machines.
public int QueueBufferingBackpressureThreshold { get; set; }
Property Value
- int
1 .. 1000000
QueueBufferingMaxKb
Maximum total message size sum allowed on the producer queue. This queue is shared by all topics and partitions. This property has higher priority thanQueueBufferingMaxMessages.
public int QueueBufferingMaxKb { get; set; }
Property Value
- int
1 .. 2147483647
QueueBufferingMaxMessages
Maximum number of messages allowed on the producer queue. This queue is shared by all topics and partitions.
public int QueueBufferingMaxMessages { get; set; }
Property Value
- int
1 .. 10000000
QueueBufferingMaxMs
Delay in milliseconds to wait for messages in the producer queue to accumulate before constructing message batches (MessageSets) to transmit to brokers. A higher value allows larger and more effective (less overhead, improved compression) batches of messages to accumulate at the expense of increased message delivery latency.
public int QueueBufferingMaxMs { get; set; }
Property Value
- int
0 .. 900000
QueuedMaxMessagesKb
Maximum number of kilobytes of queued pre-fetched messages in the local consumer queue. If using the high-level consumer this setting applies to the single consumer queue, regardless of the number of partitions. When using the legacy simple consumer or when separate partition queues are used this setting applies per partition. This value may be overshot by fetch.message.max.bytes. This property has higher priority than QueuedMinMessages.
public int QueuedMaxMessagesKb { get; set; }
Property Value
- int
1 .. 2097151
QueuedMinMessages
Minimum number of messages per topic+partition librdkafka tries to maintain in the local consumer queue.
public int QueuedMinMessages { get; set; }
Property Value
- int
1 .. 10000000
QueueingStrategy
public QueueingStrategyType QueueingStrategy { get; set; }
Property Value
Remarks
EXPERIMENTAL: subject to change or removal. DEPRECATED Producer queuing strategy.
ReceiveMessageMaxBytes
Maximum Kafka protocol response message size. This serves as a safety precaution to avoid memory exhaustion in case of protocol hickups. This value must be at least FetchMaxBytes + 512 to allow for protocol overhead; the value is adjusted automatically unless the configuration property is explicitly set.
public uint ReceiveMessageMaxBytes { get; set; }
Property Value
- uint
1000 .. 2147483647
ReconnectBackoff
The initial time to wait before reconnecting to a broker after the connection has been closed. The time is increased exponentially until ReconnectBackoffMax is reached. -25% to +50% jitter is applied to each reconnect backoff. A value of 0 disables the backoff and reconnects immediately.
public int ReconnectBackoff { get; set; }
Property Value
- int
0 .. 3600000
ReconnectBackoffMax
The maximum time to wait before reconnecting to a broker after the connection has been closed.
public int ReconnectBackoffMax { get; set; }
Property Value
- int
0 .. 3600000
ReplicationFactor
The replication factor to be used
public uint ReplicationFactor { get; set; }
Property Value
RequestRequiredAcks
This field indicates the number of acknowledgements the leader broker must receive from ISR brokers before responding to the request: 0=Broker does not send any response/ack to client, -1 or all=Broker will block until message is committed by all in sync replicas (ISRs). If there are less than min.insync.replicas
(broker configuration) in the ISR set the produce request will fail.
public int RequestRequiredAcks { get; set; }
Property Value
- int
-1 .. 1000
RequestTimeout
The ack timeout of the producer request in milliseconds. This value is only enforced by the broker and relies on RequestRequiredAcks being != 0
public int RequestTimeout { get; set; }
Property Value
- int
-1 .. 1000
RetryBackoff
The backoff time in milliseconds before retrying a protocol request.
public int RetryBackoff { get; set; }
Property Value
- int
1 .. 300000
SaslKerberosKeytab
Path to Kerberos keytab file. This configuration property is only used as a variable in sasl.kerberos.kinit.cmd
as ... -t "%{sasl.kerberos.keytab}"
.
public string SaslKerberosKeytab { get; set; }
Property Value
SaslKerberosKinitCmd
Shell command to refresh or acquire the client's Kerberos ticket. This command is executed on client creation and every sasl.kerberos.min.time.before.relogin (0=disable). %{config.prop.name} is replaced by corresponding config object value.
public string SaslKerberosKinitCmd { get; set; }
Property Value
SaslKerberosMinTimeBeforeRelogin
Minimum time in milliseconds between key refresh attempts. Disable automatic key refresh by setting this property to 0.
public int SaslKerberosMinTimeBeforeRelogin { get; set; }
Property Value
- int
0 .. 86400000
SaslKerberosPrincipal
This client's Kerberos principal name. (Not supported on Windows, will use the logon user's principal).
public string SaslKerberosPrincipal { get; set; }
Property Value
SaslKerberosServiceName
Kerberos principal name that Kafka runs as, not including /hostname@REALM
public string SaslKerberosServiceName { get; set; }
Property Value
SaslMechanism
SASL mechanism to use for authentication. Supported SaslMechanismType
public SaslMechanismType SaslMechanism { get; set; }
Property Value
SaslOauthbearerClientId
Public identifier for the application. Must be unique across all clients that the authorization server handles. Only used when SaslOauthbearerMethod is set to OIDC.
public string SaslOauthbearerClientId { get; set; }
Property Value
SaslOauthbearerClientSecret
Client secret only known to the application and the authorization server. This should be a sufficiently random string that is not guessable. Only used when SaslOauthbearerMethod is set to OIDC.
public string SaslOauthbearerClientSecret { get; set; }
Property Value
SaslOauthbearerConfig
SASL/OAUTHBEARER configuration. The format is implementation-dependent and must be parsed accordingly. The default unsecured token implementation (see https://tools.ietf.org/html/rfc7515#appendix-A.5) recognizes space-separated name=value pairs with valid names including principalClaimName, principal, scopeClaimName, scope, and lifeSeconds. The default value for principalClaimName is "sub", the default value for scopeClaimName is "scope", and the default value for lifeSeconds is 3600. The scope value is CSV format with the default value being no/empty scope. For example: principalClaimName=azp principal=admin scopeClaimName=roles scope=role1,role2 lifeSeconds=600
. In addition, SASL extensions can be communicated to the broker via extension_NAME=value
. For example: principal=admin extension_traceId=123
public string SaslOauthbearerConfig { get; set; }
Property Value
SaslOauthbearerExtensions
Allow additional information to be provided to the broker. Comma-separated list of key=value pairs. E.g., "supportFeatureX=true,organizationId=sales-emea". Only used when SaslOauthbearerMethod is set to OIDC.
public string SaslOauthbearerExtensions { get; set; }
Property Value
SaslOauthbearerMethod
Set to DEFAULT or OIDC to control which login method to be used. If set to OIDC, the following properties must also be be specified: sasl.oauthbearer.client.id
, sasl.oauthbearer.client.secret
, and sasl.oauthbearer.token.endpoint.url
.
public SaslOauthbearerMethodType SaslOauthbearerMethod { get; set; }
Property Value
SaslOauthbearerScope
Client use this to specify the scope of the access request to the broker. Only used when SaslOauthbearerMethod is set to OIDC.
public string SaslOauthbearerScope { get; set; }
Property Value
SaslOauthbearerTokenEndpointUrl
OAuth/OIDC issuer token endpoint HTTP(S) URI used to retrieve token. Only used when SaslOauthbearerMethod is set to OIDC.
public string SaslOauthbearerTokenEndpointUrl { get; set; }
Property Value
SaslPassword
SASL password for use with the PLAIN and SASL-SCRAM-.. mechanism
public string SaslPassword { get; set; }
Property Value
SaslUsername
SASL username for use with the PLAIN and SASL-SCRAM-.. mechanisms
public string SaslUsername { get; set; }
Property Value
SecurityProtocol
Protocol used to communicate with brokers.
public SecurityProtocolType SecurityProtocol { get; set; }
Property Value
SessionTimeout
Client group session and failure detection timeout. The consumer sends periodic heartbeats (HeartbeatInterval) to indicate its liveness to the broker. If no hearts are received by the broker for a group member within the session timeout, the broker will remove the consumer from the group and trigger a rebalance. The allowed range is configured with the broker configuration properties group.min.session.timeout.ms
and group.max.session.timeout.ms
. Also see MaxPollInterval.
public int SessionTimeout { get; set; }
Property Value
- int
1 .. 3600000
SocketConnectionSetupTimeout
Maximum time allowed for broker connection setup (TCP connection setup as well SSL and SASL handshake). If the connection to the broker is not fully functional after this the connection will be closed and retried.
public int SocketConnectionSetupTimeout { get; set; }
Property Value
- int
1000 .. 2147483647
SocketKeepaliveEnable
Enable TCP keep-alives (SO_KEEPALIVE) on broker sockets
public bool SocketKeepaliveEnable { get; set; }
Property Value
SocketMaxFails
Disconnect from broker when this number of send failures (e.g., timed out requests) is reached. Disable with 0. WARNING: It is highly recommended to leave this setting at its default value of 1 to avoid the client and broker to become desynchronized in case of request timeouts. NOTE: The connection is automatically re-established.
public int SocketMaxFails { get; set; }
Property Value
- int
0 .. 100000000
SocketNagleDisable
Disable the Nagle algorithm (TCP_NODELAY) on broker sockets.
public bool SocketNagleDisable { get; set; }
Property Value
SocketReceiveBufferBytes
Broker socket receive buffer size. System default is used if 0.
public int SocketReceiveBufferBytes { get; set; }
Property Value
- int
0 .. 100000000
SocketSendBufferBytes
Broker socket send buffer size. System default is used if 0.
public int SocketSendBufferBytes { get; set; }
Property Value
- int
0 .. 100000000
SocketTimeout
Default timeout for network requests. Producer: ProduceRequests will use the lesser value of SocketTimeout and remaining MessageTimeout for the first message in the batch. Consumer: FetchRequests will use FetchWaitMax + SocketTimeout. Admin: Admin requests will use SocketTimeout or explicitly set rd_kafka_AdminOptions_set_operation_timeout()
value.
public int SocketTimeout { get; set; }
Property Value
- int
10 .. 300000
SslCA
CA certificate as set by rd_kafka_conf_set_ssl_cert()
public string SslCA { get; set; }
Property Value
SslCACertificateStores
Comma-separated list of Windows Certificate stores to load CA certificates from. Certificates will be loaded in the same order as stores are specified. If no certificates can be loaded from any of the specified stores an error is logged and the OpenSSL library's default CA location is used instead. Store names are typically one or more of: MY, Root, Trust, CA.
public IEnumerable<string> SslCACertificateStores { get; set; }
Property Value
SslCALocation
File or directory path to CA certificate(s) for verifying the broker's key. Defaults: On Windows the system's CA certificates are automatically looked up in the Windows Root certificate store. On Mac OSX this configuration defaults to probe
. It is recommended to install openssl using Homebrew, to provide CA certificates. On Linux install the distribution's ca-certificates package. If OpenSSL is statically linked or ssl.ca.location
is set to probe
a list of standard paths will be probed and the first one found will be used as the default CA certificate location path. If OpenSSL is dynamically linked the OpenSSL library's default path will be used (see OPENSSLDIR
in openssl version -a
).
public string SslCALocation { get; set; }
Property Value
SslCAPem
CA certificate string (PEM format) for verifying the broker's key.
public string SslCAPem { get; set; }
Property Value
SslCertificate
Client's public key as set by rd_kafka_conf_set_ssl_cert()
public string SslCertificate { get; set; }
Property Value
SslCertificateLocation
Path to client's public key (PEM) used for authentication.
public string SslCertificateLocation { get; set; }
Property Value
SslCertificatePem
Client's public key string (PEM format) used for authentication.
public string SslCertificatePem { get; set; }
Property Value
SslCipherSuites
A cipher suite 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. See manual page for ciphers(1)
and `SSL_CTX_set_cipher_list(3).
public string SslCipherSuites { get; set; }
Property Value
SslCrlLocation
Path to CRL for verifying broker's certificate validity.
public string SslCrlLocation { get; set; }
Property Value
SslCurvesList
The supported-curves extension in the TLS ClientHello message specifies the curves (standard/named, or 'explicit' GF(2^k) or GF(p)) the client is willing to have the server use. See manual page for SSL_CTX_set1_curves_list(3)
. OpenSSL >= 1.0.2 required.
public string SslCurvesList { get; set; }
Property Value
SslEndpointIdentificationAlgorithm
Endpoint identification algorithm to validate broker hostname using broker certificate. https - Server (broker) hostname verification as specified in RFC2818. none - No endpoint verification. OpenSSL >= 1.0.2 required.
public SslEndpointIdentificationAlgorithmType SslEndpointIdentificationAlgorithm { get; set; }
Property Value
SslEngineId
OpenSSL engine id is the name used for loading engine.
public string SslEngineId { get; set; }
Property Value
SslEngineLocation
Path to OpenSSL engine library. OpenSSL >= 1.1.0 required.
public string SslEngineLocation { get; set; }
Property Value
SslKey
Client's private key as set by rd_kafka_conf_set_ssl_cert()
public string SslKey { get; set; }
Property Value
SslKeyLocation
Path to client's private key (PEM) used for authentication.
public string SslKeyLocation { get; set; }
Property Value
SslKeyPassword
Private key passphrase (for use with ssl.key.location
and set_ssl_cert()
)
public string SslKeyPassword { get; set; }
Property Value
SslKeyPem
Client's private key string (PEM format) used for authentication.
public string SslKeyPem { get; set; }
Property Value
SslKeystoreLocation
Path to client's keystore (PKCS#12) used for authentication.
public string SslKeystoreLocation { get; set; }
Property Value
SslKeystorePassword
Client's keystore (PKCS#12) password.
public string SslKeystorePassword { get; set; }
Property Value
SslSisalgsList
The client uses the TLS ClientHello signature_algorithms extension to indicate to the server which signature/hash algorithm pairs may be used in digital signatures. See manual page for SSL_CTX_set1_sigalgs_list(3)
. OpenSSL >= 1.0.2 required.
public string SslSisalgsList { get; set; }
Property Value
StatisticsInterval
librdkafka statistics emit interval. The application also needs to register a stats callback using rd_kafka_conf_set_stats_cb()
. The granularity is 1000ms. A value of 0 disables statistics.
public int StatisticsInterval { get; set; }
Property Value
- int
0 .. 86400000
StickyPartitioningLinger
Delay in milliseconds to wait to assign new sticky partitions for each topic. By default, set to double the time of linger.ms. To disable sticky behavior, set to 0. This behavior affects messages with the key NULL in all cases, and messages with key lengths of zero when the consistent_random partitioner is in use. These messages would otherwise be assigned randomly. A higher value allows for more effective batching of these messages.
public int StickyPartitioningLinger { get; set; }
Property Value
- int
0 .. 900000
TopicBlackList
Topic blacklist, a comma-separated list of regular expressions for matching topic names that should be ignored in broker metadata information as if the topics did not exist.
public IEnumerable<string> TopicBlackList { get; set; }
Property Value
TopicCompressionCodec
Compression codec to use for compressing message sets. inherit = inherit global compression.codec configuration.
public CompressionCodecType TopicCompressionCodec { get; set; }
Property Value
Remarks
inherit is default: don't set this preperty to use default
TopicCreate
True to request a create topic
public bool TopicCreate { get; set; }
Property Value
TopicMetadataPropagationMax
Apache Kafka topic creation is asynchronous and it takes some time for a new topic to propagate throughout the cluster to all brokers. If a client requests topic metadata after manual topic creation but before the topic has been fully propagated to the broker the client is requesting metadata from, the topic will seem to be non-existent and the client will mark the topic as such, failing queued produced messages with ERR__UNKNOWN_TOPIC
. This setting delays marking a topic as non-existent until the configured propagation max time has passed. The maximum propagation time is calculated from the time the topic is first referenced in the client, e.g., on produce().
public int TopicMetadataPropagationMax { get; set; }
Property Value
- int
0 .. 3600000
TopicMetadataRefreshFastInterval
When a topic loses its leader a new metadata request will be enqueued with this initial interval, exponentially increasing until the topic metadata has been refreshed. This is used to recover quickly from transitioning leader brokers.
public int TopicMetadataRefreshFastInterval { get; set; }
Property Value
- int
1 .. 60000
TopicMetadataRefreshInterval
Period of time in milliseconds at which topic and broker metadata is refreshed in order to proactively discover any new brokers, topics, partitions or partition leader changes. Use -1 to disable the intervalled refresh (not recommended). If there are no locally referenced topics (no topic objects created, no messages produced, no subscription or no assignment) then only the broker list will be refreshed every interval but no more often than every 10s.
public int TopicMetadataRefreshInterval { get; set; }
Property Value
- int
-1 .. 3600000
TopicMetadataRefreshSparse
Sparse metadata requests (consumes less network bandwidth)
public bool TopicMetadataRefreshSparse { get; set; }
Property Value
TransactionTimeout
The maximum amount of time in milliseconds that the transaction coordinator will wait for a transaction status update from the producer before proactively aborting the ongoing transaction. If this value is larger than the transaction.max.timeout.ms
setting in the broker, the init_transactions() call will fail with ERR_INVALID_TRANSACTION_TIMEOUT. The transaction timeout automatically adjusts MessageTimeout and SocketTimeout, unless explicitly configured in which case they must not exceed the transaction timeout (SocketTimeout must be at least 100ms lower than TransactionTimeout). This is also the default timeout value if no timeout (-1) is supplied to the transactional API methods.
public int TransactionTimeout { get; set; }
Property Value
- int
0 .. 300000
TransactionalId
Enables the transactional producer. The TransactionalId is used to identify the same transactional producer instance across process restarts. It allows the producer to guarantee that transactions corresponding to earlier instances of the same producer have been finalized prior to starting any new transactions, and that any zombie instances are fenced off. If no transactional.id is provided, then the producer is limited to idempotent delivery (if EnableIdempotence is set). Requires broker version >= 0.11.0.
public string TransactionalId { get; set; }
Property Value
TransactionsEnabled
True to enable transactions
public bool TransactionsEnabled { get; set; }
Property Value
TransactionsTimeout
The timeout to be used in transaction operations when TransactionsEnabled is true
public uint TransactionsTimeout { get; set; }
Property Value
Methods
CheckConfiguration()
Checks the configuration for mandatory information
protected override void CheckConfiguration()