Sink Configuration Options
Reference of the sink connector options.
Database
connection.cluster_address
Couchbase Cluster addresses to listen (use comma to specify several).
-
Type: list
-
Importance: high
couchbase.network
The network selection strategy for connecting to a Couchbase Server cluster that advertises alternate addresses.
A Couchbase node running inside a container environment (like Docker or Kubernetes) might be configured to advertise both its address within the container environment (known as its "default" address) as well as an "external" address for use by clients connecting from outside the environment.
Setting the couchbase.network
config property to default
or external
forces the selection of the respective addresses.
Setting the value to auto
tells the connector to select whichever network contains the addresses specified in the connection.cluster_address
config property; this heuristic works well in most environments and is the recommended mode.
-
Possible values:
-
auto
-
default
-
external
-
-
Since: 3.4.5 (uncommitted)
-
Type: string
-
Importance: low
-
Default:
"auto"
connection.username
Couchbase username for Couchbase Server 5.0 and later.
-
Type: string
-
Importance: high
-
Default: the bucket name specified by
connection.bucket
connection.password
Couchbase password.
For Couchbase Server versions prior to 5.0 this is the bucket password.
For versions 5.0 and later, this is the password associated with connection.username
.
-
Type: password
-
Importance: low
-
Default:
""
connection.ssl.enabled
Use SSL to connect to Couchbase. This feature only available in Couchbase Enterprise.
-
Type: boolean
-
Importance: low
-
Default:
false
-
Dependents:
connection.ssl.keystore.location
,connection.ssl.keystore.password
connection.ssl.keystore.password
The password of the private key in the key store file.
-
Type: password
-
Importance: low
-
Default:
""
couchbase.document.id
Optionally set the Couchbase document ID from fields of the message body.
The value is a format string with a placeholder for each field to include in the ID.
A placeholder looks like ${/path/to/field}
where the path is specified as a JSON pointer.
For backwards compatibility, a format string without placeholders is interpreted as a single JSON pointer.
The examples below assume the following sample document content:
{
"id": 123,
"metadata": {
"type": "widget"
}
}
-
Example values:
-
${/id}
→ 123 -
invoice::${/id}
→ invoice::123 -
${/metadata/type}::${/id}
→ widget::123 -
/id
→ 123 (deprecated, use${/id}
instead)
-
-
Since: 3.3.1
-
Type: string
-
Importance: low
-
Default:
""
-
Dependents:
couchbase.remove.document.id
couchbase.remove.document.id
Controls whether the ID field is removed from the document when couchbase.document.id
is specified.
-
Type: boolean
-
Importance: low
-
Default:
false
couchbase.durability.persist_to
Optionally specify Couchbase persistence requirements for a write to be considered successful. If the requested requirements cannot be met (due to Couchbase rebalance or failover, for instance) the connector will terminate.
-
Possible values:
-
NONE - Do not require any disk persistence.
-
MASTER - Require disk persistence to the master node of the document only.
-
ONE - Require disk persistence of one node (master or replica).
-
TWO - Require disk persistence of two nodes (master or replica).
-
THREE - Require disk persistence of three nodes (master or replica).
-
FOUR - Require disk persistence of four nodes (master + three replicas).
-
-
Since: 3.2.2
-
Type: boolean
-
Importance: low
-
Default:
"NONE"
couchbase.durability.replicate_to
Optionally specify Couchbase replication requirements for a write to be considered successful. If the requested requirements cannot be met (due to Couchbase rebalance or failover, for instance) the connector will terminate.
-
Possible values:
-
NONE - Do not require any replication.
-
ONE - Require replication to one replica.
-
TWO - Require replication to two replicas.
-
THREE - Require replication to three replicas.
-
-
Since: 3.2.2
-
Type: boolean
-
Importance: low
-
Default:
"NONE"
couchbase.log_redaction
Optionally tag sensitive values in the log output for later redaction.
-
Possible values:
-
NONE - No redaction is performed.
-
PARTIAL - Only user data is redacted, system and metadata are not.
-
FULL - User, System and Metadata are all redacted.
-
-
Since: 3.2.3
-
Type: string
-
Importance: low
-
Default:
"NONE"
couchbase.forceIPv4
In a network environment that supports both IPv4 and IPv6, setting this property to true
will force the use of IPv4 when resolving Couchbase Server hostnames.
-
Since: 3.3.0
-
Type: boolean
-
Importance: low
-
Default:
false
couchbase.document.expiration
Optionally specify a time-to-live for documents written to Couchbase.
If present, the value must be an integer followed by a time unit.
(s
= seconds, m
= minutes, h
= hours, d
= days).
Example value: 30m
.
-
Since: 3.3.1
-
Type: string
-
Importance: low
-
Default:
""
(documents will not expire)
Parent topic: Kafka Connector
Previous topic: Source Configuration Options
Next topic: Couchbase Sample with Kafka Streams