Один из распространенных методов, который используется, это «отслеживание невыполненных событий», при котором вы будете периодически читать свойства раздела Event Hub и сравнивать дельту между порядковым номером события, с которым вы в данный момент обрабатываете события последнего опубликованного в разделе. Хотя это и не пуленепробиваемый и совершенный подход, он обеспечивает разумный грубый подход, позволяющий понять, наблюдаете ли вы события, публикуемые с большей скоростью, чем их чтение, при отслеживании этого в течение нескольких циклов.
Хотя это доступно с EventProcessorClient
в новой библиотеке Azure.Messaging.EventHubs.Processor
, к сожалению, не похоже, что устаревший процессор Microsoft.Azure.EventHubs
выставляет его.
Если вы управляете масштабированием через оркестратор или другие средства, не входящие непосредственно в ваш процессор, тогда вы можете рассмотреть возможность использования API REST. Конечная точка Get Partition Metadata возвращает информацию о размере раздела, входящих / исходящих скоростях, а также начальные / конечные порядковые номера для сравнения.