230.2. MongoDB 选项
MongoDB 组件支持 4 个选项,如下所列。
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
mongoConnection (common) | 设置用于连接的客户端:组件生成的所有端点都将共享此连接 bean。 | MongoClient | |
basicPropertyBinding (advanced) | 组件是否应该使用基本属性绑定(Camel 2.x)还是较新的属性与附加功能绑定 | false | 布尔值 |
lazyStartProducer (producer) | 生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。 | false | 布尔值 |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
MongoDB 端点使用 URI 语法进行配置:
mongodb3:connectionBean
使用以下路径和查询参数:
230.2.1. 路径参数(1 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
connectionBean | 要使用的 com.mongodb.Mongo 所需的 名称。 | 字符串 |
230.2.2. 查询参数(26 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
collection (common) | 设置要绑定到此端点的 MongoDB 集合的名称 | 字符串 | |
collectionIndex (common) | 设置集合索引(JSON FORMAT : { field1 : order1, field2 : order2}) | 字符串 | |
createCollection (common) | 在初始时创建集合(如果不存在)。默认为 true。 | true | 布尔值 |
数据库 (common) | 将 MongoDB 数据库的名称设置为 target | 字符串 | |
mongoConnection (common) | 设置代表后备连接的 Mongo 实例 | MongoClient | |
operation (common) | 设置此端点将针对 MongoDB 执行的操作。 | MongoDbOperation | |
outputType (common) | 将制作者的输出转换为所选类型:DocumentList Document 或 MongoIterable。DocumentList 或 MongoIterable 适用于 findAll 和 aggregate。文档适用于所有其他操作。 | MongoDbOutputType | |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
consumerType (consumer) | 消费者类型。 | 字符串 | |
exceptionHandler (consumer) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在消费者创建交换时设置交换模式。 | ExchangePattern | |
lazyStartProducer (producer) | 生成者是否应懒惰启动 (在第一个消息中)。通过懒惰启动,您可以使用此选项来允许 CamelContext 和路由在生成者启动期间启动,并导致路由启动失败。通过懒惰启动,启动失败可以在路由信息时通过 Camel 的路由错误处理程序进行处理。请注意,在处理第一个消息时,创建并启动生成者可能需要稍等时间,并延长处理的总处理时间。 | false | 布尔值 |
basicPropertyBinding (advanced) | 端点是否应该使用基本属性绑定(Camel 2.x)还是较新的属性绑定和附加功能 | false | 布尔值 |
cursorRegenerationDelay (advanced) | MongoDB tailable cursors 将阻止到新数据到达为止。如果没有插入新数据,则在一段时间后,MongoDB 服务器将自动释放和关闭光标。如果需要,客户端应该重新生成光标。这个值指定尝试获取新光标前等待的时间,如果尝试失败,则尝试失败,下一次尝试进行前的时长。默认值为 1000ms。 | 1000 | long |
dynamicity (advanced) | 设置此端点是否将尝试从传入的 Exchange 属性动态解析目标数据库和集合。可用于在运行时覆盖其他静态端点 URI 中指定的数据库和集合。它默认是禁用的,以提高性能。启用它将占用最小的性能命中。 | false | 布尔值 |
readPreference (advanced) | 配置 MongoDB 客户端如何将读取操作路由到副本集的成员。可能的值有 PRIMARY, PRIMARY_PREFERRED, SECONDARY, SECONDARY_PREFERRED 或 NEAREST | PRIMARY | 字符串 |
同步 (advanced) | 设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。 | false | 布尔值 |
writeConcern (advanced) | 使用从 MongoDB 向独立 mongod、replicaset 或 cluster 请求的确认级别配置连接 bean。可能的值有 ACKNOWLEDGED, W1, W2, W3, UNACKNOWLEDGED, JOURNALED 或 MAJORITY。 | 已确认 | 字符串 |
writeResultAsHeader (advanced) | 在写入操作中,它决定是否返回 WriteResult 作为 OUT 消息的正文,我们将 IN 消息传送到 OUT,并将 WriteResult 附加为标头。 | false | 布尔值 |
streamFilter (changeStream) | 用于更改流消费者的过滤条件。 | 字符串 | |
persistentId (tail) | 一个尾部跟踪集合可以为多个可尾部消费者托管许多跟踪器。为了保持它们独立,每个跟踪器都应该拥有自己的唯一的 persistentId。 | 字符串 | |
persistentTailTracking (tail) | 启用持久的尾部跟踪,这是一种在系统重启后跟踪最后一次消耗的消息的机制。下一次系统启动时,端点将从最后停止的滑动记录点中恢复。 | false | 布尔值 |
tailTrackCollection (tail) | 会保留尾部跟踪信息的集合。如果没有指定,则默认使用 MongoDbTailTrackingConfig#DEFAULT_COLLECTION。 | 字符串 | |
tailTrackDb (tail) | 指明尾部跟踪机制将保留的数据库。如果未指定,则默认选择当前数据库。即使启用,也不会考虑动态性,即尾部跟踪数据库不会因过去的端点初始而不同。 | 字符串 | |
tailTrackField (tail) | 放置最后一个跟踪值的字段。如果没有指定,则默认使用 MongoDbTailTrackingConfig#DEFAULT_FIELD。 | 字符串 | |
tailTrackIncreasingField (tail) | 传入记录中的关联字段会提高性质,并将在每次生成尾部时都用于定位尾部光标。使用 type: tailTrackIncreasingField 的查询创建光标将被(re)创建,它大于 lastValue (可能从持久尾部跟踪中恢复)。可以是 Integer, Date, String 等类型。注意:目前不支持点表示法,因此该字段应位于文档的顶部。 | 字符串 |