使用 Apache Camel AWS-KINESIS 端点,如何检查 Kinesis 流中的消息?

Using Apache Camel AWS-KINESIS endpoint, how do I checkpoint the message in the Kinesis stream?

我在 Camel 中使用 AWS-KINESIS 端点来读取 AWS Kinesis 内容流。 我可以很好地阅读消息,但如何检查流中的消息?在标准的 AWS Kinesis Java 客户端库中,你有 Workers 和 Processors 的概念,但它似乎在 Camel 中完全被绕过了。

我的路线:

  from("aws-kinesis://" + CONTENT_STREAM_NAME + "?amazonKinesisClient=#kinesisClient").
        routeId(KINESIS_EVENT_READ).
        bean(recordHandler);

在记录处理程序中,我想在正确处理记录时检查记录。

RecordHandler 的@Handler

    @Handler
    public void handleRecord(@Body Record record) {
        processEvent(record); // I would like to checkpoint after this...
    }

有什么指点吗?

AWS-KINESIS for Camel 目前使用同步 Kinesis portion of the AWS SDK. The Workers, Processors and Checkpointing you are refering to are from the KCL (Kinesis Client Libary),这是一种更高级的访问 Kinesis 的方式(包括每个分区一个线程和检查点)。 Camel 似乎还没有基于 KCL 的消费者组件,也没有相应的基于 KPL 的生产者组件。