Как использовать контрольную точку Apache Camel AWS-KINESIS для проверки контрольной точки в потоке Kinesis?

Я использую конечную точку AWS-KINESIS в Camel для чтения из потока содержимого AWS Kinesis. Я могу читать сообщения очень хорошо, но как мне проверить сообщение в потоке? В стандартной клиентской библиотеке AWS Kinesis Java есть концепция "Рабочие и процессоры", но в Camel это, кажется, полностью исключено.

Мой маршрут:

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

В обработчике записей я хотел бы проверить контрольные точки, когда запись обрабатывается правильно.

Рекордхендлер @Handler

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

Есть указатели?

1 ответ

AWS-KINESIS для Camel в настоящее время использует синхронную часть Kinesis пакета AWS SDK. Рабочие, процессоры и контрольные точки, на которые вы ссылаетесь, взяты из KCL ( Kinesis Client Libary), который является более продвинутым способом доступа к Kinesis (включая поток на раздел и контрольные точки). Кажется, что пока нет ни потребительского Компонента на основе KCL для Camel, ни соответствующего Компонентного производителя на основе KPL.

Другие вопросы по тегам