Журнал опроса, PollSessionId

Описание приложения:

Разрабатывается приложение, которое собирает и обрабатывает данные опросов, отправляя их в систему Kafka. Приложение использует класс PollSessionLogWatcher, который отслеживает сообщения PollSessionMessage. При получении сообщения PollSessionLogMessage со значение “Опрос завершен”, приложение:

  1. Собирает все даты из сообщений, за которые были получены данные в этой сесии.
  2. Получает все measurePoint для данной сессии опроса по EquipmentId.
  3. Запрашивает данные из полученных дат с использованием метода GetConsumption.
  4. Формирует и отправляет сообщение в Kafka.

Проблема:

При запуске приложения выполняется проверка на пропущенные сессии и если они есть, то все пропущенные сессии обрабатываются в соответствии с алгоритмом получения сообщений. Однако, эта проверка осуществляется на основе последнего PollSessionId из последнего сообщения Kafka, а данные запрашиваются напрямую из базы данных, минуя API. Но такой подход может привести к пропуску сессий, так как не гарантирует, что все данные были обработаны.

Вопрос:

Как в данном контексте можно получить пропущенные ID сессий опроса и журналы опроса, используя API, а не обращения к базе данных?

В LersFramework есть класс PollSessionManager, который как раз позволяет получить сеансы опроса.

Данный класс позволит получить сессию по PollSessionId. А как узнать какие сессии были пропущены? т.е. получить PollSessionId после указанного PollSessionId, или от времени или еще как-то.

Предполагаем что описаное выше приложение завершило работу с ошибкой и востанавливает работу через 2 часа. так вот надо понять какие сессии (PollSessionId) были пропущены в эти два часа.

Посмотрите, пожалуйста, описание данного класса. В нем присутствуют различные методы, в том числе те, которые не требуют PollSessionId для запроса сеансов.

Да сессии получить удалось, но не журнал по этим сессиям.

А как вы пытались получить журнал опроса по сеансу?

Сейчас эти сообщения получаются через базу данных.
А в api не знаю, как это сделать. В этом и вопрос.

Во все том же классе есть метод получения журнала по PollSessionId. Воспользуйтесь им.

Понял, спасибо большое!