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 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
connectionBean | 要使用的 com.mongodb.Mongo 所需的 名称。 | 字符串 |
230.2.2. 查询参数(26 参数):
Name | 描述 | 默认值 | 类型 |
---|---|---|---|
collection (common) | 设置要绑定到此端点的 MongoDB 集合的名称 | 字符串 | |
collectionIndex (common) | 设置集合索引(JSON FORMAT : { field1 : order1, field2 : order2}) | 字符串 | |
createCollection (common) | 如果集合不存在,请在初始期间创建集合。默认为 true。 | true | 布尔值 |
Database (common) | 将 MongoDB 数据库的名称设置为目标 | 字符串 | |
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 |
动态性( advanced) | 设置此端点是否尝试动态解析目标数据库和从传入的 Exchange 属性收集。可用于在运行时覆盖数据库和在其他静态端点 URI 中指定的集合。它默认是禁用的,以提高性能。启用它将需要最小的性能。 | false | 布尔值 |
readPreference (advanced) | 配置 MongoDB 客户端如何将读取操作路由到副本集的成员。可能的值有 PRIMARY, PRIMARY_PREFERRED, SECONDARY, SECONDARY_PREFERRED 或 NEAREST | 主 | 字符串 |
同步 (高级) | 设置是否应严格使用同步处理,还是允许 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) | 指明 tail 跟踪机制将保留什么数据库。如果未指定,则默认选择当前数据库。即使启用,动态性也不会考虑,例如,尾部跟踪数据库不会因为端点初始化而不同。 | 字符串 | |
tailTrackField (tail) | 将放置最后一次跟踪值的字段。如果没有指定,则默认使用 MongoDbTailTrackingConfig#DEFAULT_FIELD。 | 字符串 | |
tailTrackIncreasingField (tail) | 传入记录中的关联字段是不断增长的,并且用于在每次生成时都定位尾部光标。光标将(re)创建,其类型为 tailTrackIncreasingField 大于 lastValue (可能从持久尾部跟踪中恢复)。可以是 Integer, Date, String 等类型。注意:当前不支持点表示法,因此该字段应处于文档的最高级别。 | 字符串 |