Chapter 56. MongoDB Sink
Send data to MongoDB.
This Kamelet expects a JSON-formatted body.
In the header, you can set the db-upsert / ce-dbupsert property, a boolean value that specifies whether the database should create an element if it does not exist.
56.1. Configuration Options Copy linkLink copied to clipboard!
The following table summarizes the configuration options available for the mongodb-sink Kamelet:
| Property | Name | Description | Type | Default | Example |
|---|---|---|---|---|---|
| collection * | MongoDB Collection | The name of the MongoDB collection to bind to this endpoint. | string | ||
| database * | MongoDB Database | The name of the MongoDB database. | string | ||
| hosts * | MongoDB Hosts |
A comma-separated list of MongoDB host addresses in | string | ||
| createCollection | Collection | Create a collection during initialization if it doesn’t exist. | boolean | False | |
| password | MongoDB Password | A user password for accessing MongoDB. | string | ||
| ssl | Enable Ssl for Mongodb Connection | whether to enable ssl connection to mongodb. | boolean | True | |
| sslValidationEnabled | Enables Ssl Certificates Validation and Host name checks. | IMPORTANT this should be disabled only in test environment since can pose security issues. | boolean | True | |
| username | MongoDB Username | A username for accessing MongoDB. | string | ||
| writeConcern | Write Concern | The level of acknowledgment requested from MongoDB for write operations. | string |
* = Fields marked with an asterisk are mandatory.
56.2. Dependencies Copy linkLink copied to clipboard!
56.2.1. Quarkus dependencies Copy linkLink copied to clipboard!
56.3. Usage Copy linkLink copied to clipboard!
56.3.1. Camel JBang usage Copy linkLink copied to clipboard!
56.3.1.1. Prerequisites for JBang Copy linkLink copied to clipboard!
- Install JBang.
You have executed the following command:
jbang app install camel@apache/camel
jbang app install camel@apache/camelCopy to Clipboard Copied! Toggle word wrap Toggle overflow
56.3.1.2. Running a route with JBang Copy linkLink copied to clipboard!
Suppose you have a file named route.yaml with this content:
You can now run it directly through the following command.
camel run route.yaml
camel run route.yaml
56.3.2. Knative Sink Copy linkLink copied to clipboard!
You can use the mongodb-sink Kamelet as a Knative sink by binding it to a Knative object.
mongodb-sink-binding.yaml
56.3.3. Kafka Sink Copy linkLink copied to clipboard!
You can use the mongodb-sink Kamelet as a Kafka sink by binding it to a Kafka topic.
mongodb-sink-binding.yaml