Docs Menu

Docs HomeDevelop ApplicationsMongoDB Kafka Connector

Kafka Topic Properties

On this page

  • Overview
  • Settings

Use the following configuration settings to specify which Kafka topics the MongoDB Kafka source connector should publish data to.

For a list of source connector configuration settings organized by category, see the guide on Source Connector Configuration Properties.

Name
Description
topic.prefix
Type: string

Description:
Specifies the first part of the destination Kafka topic name to which the connector publishes change stream events. The destination topic name is composed of the topic.prefix value followed by the database and collection names, separated by the value specified in the topic.separator property.

Tip

See also:

Topic Naming Prefix usage example

Default: ""
Accepted Values: A string composed of ASCII alphanumeric characters including ".", "-", and "_"
topic.suffix
Type: string

Description:
Specifies the last part of the destination Kafka topic name to which the connector publishes change stream events. The destination topic name is composed of the database and collection names followed by the topic.suffix value, separated by the value specified in the topic.separator property.

Tip

See also:

Topic Naming Suffix usage example

Default: ""
Accepted Values: A string composed of ASCII alphanumeric characters including ".", "-", and "_"
topic.namespace.map
Type: string

Description:
Specifies a JSON mapping between change stream document namespaces and topic names.

Tip

Namespace Mapping Behavior

You can specify complex mappings by using the topic.namespace.map property. This property supports regex and wildcard matching. To learn more about these behaviors and view examples, see the Topic Namespace Map section of the Topic Naming page.

Default: ""
Accepted Values: A valid JSON object
topic.separator
Type: string

Description:
Specifies the string the connector uses to concatenate the values used to create the name of your topic. The connector publishes records to a topic with a name formed by concatenating the values of the following fields in the following order:
  1. topic.prefix

  2. database

  3. collection

  4. topic.suffix

Example

The following configuration instructs the connector to publish change stream documents from the coll collection of the db database to the prefix-db-coll topic:

topic.prefix=prefix
database=db
collection=coll
topic.separator=-

Important

Topic Separator and Topic Namespace Map

When you use the topic.separator property, keep in mind that it does not affect how you define the topic.namespace.map property. The topic.namespace.map property uses MongoDB namespaces which you must always specify with a "." character to separate the database and collection name.


Default: "."
Accepted Values: A string
topic.mapper
Type: string

Description:
The Java class that defines your custom topic mapping logic.

Default: com.mongodb.kafka.connect.source.topic.mapping.DefaultTopicMapper
← MongoDB Source Connection Properties

On this page