227.10. 启用持久性尾部跟踪


要启用这个功能,请在端点 URI 上至少设置以下选项:

  • persistentTailTracking 选项为 true
  • persistentId 选项用于这个使用者的唯一标识符,以便可以在很多消费者之间重复使用相同的集合

另外,您可以将 tailTrackDbtailTrackCollectiontailTrackField 选项设置为自定义存储运行时信息的位置。有关每个选项的描述,请参阅本页顶部的端点选项表。

例如,以下路由会使用来自 "flights.cancellations" capped 集合,使用 "departureTime" 作为增大字段,默认的 regeneration 光标延迟为 1000ms,打开持久的 tail 跟踪,并在 "flights.camelTailTailTracking" 的 "cancellationsTracker" id 下保留。 在 "lastTrackingValue" 字段中存储最后一个处理的值(camelTailTrackinglastTrackingValue 为 defaults)。

Copy to Clipboard Toggle word wrap
from("mongodb:myDb?database=flights&collection=cancellations&tailTrackIncreasingField=departureTime&persistentTailTracking=true" +
     "&persistentId=cancellationsTracker")
    .id("tailableCursorConsumer2")
    .autoStartup(false)
    .to("mock:test");

以下是与上面的另一个示例相同,但其中持久性 tail 跟踪运行时信息将存储在 "trackers.camelTrackers" 字段中的 "lastProcessedDepartureTime" 字段中:

Copy to Clipboard Toggle word wrap
from("mongodb:myDb?database=flights&collection=cancellations&tailTrackIncreasingField=departureTime&persistentTailTracking=true" +
     "&persistentId=cancellationsTracker&tailTrackDb=trackers&tailTrackCollection=camelTrackers" +
     "&tailTrackField=lastProcessedDepartureTime")
    .id("tailableCursorConsumer3")
    .autoStartup(false)
    .to("mock:test");
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat, Inc.