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