Я использую библиотеку обработчика каналов изменений для использования канала изменений Cosmos DB. Код создания IChangeFeedProcessor выглядит так:
var builder = new ChangeFeedProcessorBuilder();
processor = await builder
.WithHostName(hostName)
.WithFeedCollection(feedCollectionInfo)
.WithLeaseCollection(leaseCollectionInfo)
.WithObserverFactory(observerFactory)
.BuildAsync();
await processor.StartAsync();
В методе ProcessChangesAsync () реализации IChangeFeedObserver я вызываю внешний API для каждого документа в пакете.
Я хотел бы остановить процессор, когда внешний API не работает, чтобы я не читал документы из канала изменений, когда я не могу их обработать.
Как остановить процессор (используя метод StopAsync ()), когда реализация IChangeFeedObserver.ProcessChangesAsync () выдает исключение?
ProcessChangesAsync
? - person Nick Chapsas   schedule 30.11.2018