Event Hubs-üzenetkezelési kivételek – .NET (örökölt)

Ez a szakasz a .NET-keretrendszer API-k által létrehozott .NET-kivételeket sorolja fel.

Fontos

A cikkben felsorolt kivételek némelyike csak az örökölt Event Hubs .NET-tárra vonatkozik. Például: Microsoft.ServiceBus.* kivételek.

Az új .NET-kódtár által felvetett EventHubsException-ről további információt az EventHubsException – .NET című témakörben talál .

2026. szeptember 30-án kivonjuk az Azure Service Bus SDK-kódtárakat a WindowsAzure.ServiceBus, a Microsoft.Azure.ServiceBus és a com.microsoft.azure.servicebus kódtárakból, amelyek nem felelnek meg az Azure SDK irányelveinek. Az SBMP protokoll támogatását is megszüntetjük, így 2026. szeptember 30. után már nem használhatja ezt a protokollt. Migrálás a legújabb Azure SDK-kódtárakba, amelyek kritikus fontosságú biztonsági frissítéseket és továbbfejlesztett képességeket kínálnak ezen dátum előtt.

Bár a régebbi kódtárak 2026. szeptember 30-tól továbbra is használhatók, a Microsoft már nem kap hivatalos támogatást és frissítéseket. További információkért lásd a támogatási nyugdíjazási bejelentést.

Kivételkategóriák

Az Event Hubs .NET API-k olyan kivételeket hoznak létre, amelyek a következő kategóriákba sorolhatók, valamint a hozzájuk tartozó műveletekkel, amelyekkel megpróbálhatja kijavítani őket:

Kivételtípusok

Az alábbi táblázat az üzenetküldési kivételtípusokat és azok okait, valamint a javasolt műveletek megjegyzéseit sorolja fel.

Kivétel típusa Leírás/Ok/Példák Javasolt művelet Megjegyzés az automatikus/azonnali újrapróbálkozásról
TimeoutException A kiszolgáló nem válaszolt a kért műveletre a megadott időn belül, amelyet az OperationTimeout vezérel. Lehetséges, hogy a kiszolgáló befejezte a kért műveletet. Ez a kivétel hálózati vagy egyéb infrastruktúra-késések miatt fordulhat elő. Ellenőrizze a rendszerállapot konzisztenciáját, és szükség esetén próbálkozzon újra.
Lásd: TimeoutException.
Az újrapróbálkozás bizonyos esetekben segíthet; adja hozzá az újrapróbálkozás logikáját a kódhoz.
InvalidOperationException A kért felhasználói művelet nem engedélyezett a kiszolgálón vagy a szolgáltatáson belül. Részletekért tekintse meg a kivételről szóló üzenetet. A Complete például akkor hozza létre ezt a kivételt, ha az üzenet FogadásAndDelete módban érkezett. Ellenőrizze a kódot és a dokumentációt. Győződjön meg arról, hogy a kért művelet érvényes. Az újrapróbálkozás nem segít.
OperationCanceledException Megkísérlik meghívni egy műveletet egy már lezárt, megszakított vagy megsemmisített objektumon. Ritkán a környezeti tranzakció már el van dobva. Ellenőrizze a kódot, és győződjön meg arról, hogy nem indítja el a műveleteket egy megsemmisített objektumon. Az újrapróbálkozás nem segít.
UnauthorizedAccessException A TokenProvider objektum nem tudott jogkivonatot beszerezni, a jogkivonat érvénytelen, vagy a jogkivonat nem tartalmazza a művelet végrehajtásához szükséges jogcímeket. Győződjön meg arról, hogy a jogkivonat-szolgáltató a megfelelő értékekkel van létrehozva. Ellenőrizze a hozzáférés-vezérlési szolgáltatás konfigurációját. Az újrapróbálkozás bizonyos esetekben segíthet; adja hozzá az újrapróbálkozás logikáját a kódhoz.
ArgumentException
ArgumentNullException
ArgumentOutOfRangeException
A metódushoz megadott egy vagy több argumentum érvénytelen. A NamespaceManagernek vagy a Létrehozásnak megadott URI elérésiút-szegmens(ek)et tartalmaz. A NamespaceManager vagy a Create számára megadott URI-séma érvénytelen. A tulajdonság értéke nagyobb, mint 32 KB. Ellenőrizze a hívó kódot, és győződjön meg arról, hogy az argumentumok helyesek. Az újrapróbálkozás nem segít.
Microsoft.ServiceBus.Messaging MessagingEntityNotFoundException

Microsoft.Azure.EventHubs MessagingEntityNotFoundException
A művelethez társított entitás nem létezik, vagy törölték. Győződjön meg arról, hogy az entitás létezik. Az újrapróbálkozás nem segít.
MessagingCommunicationException Az ügyfél nem tud kapcsolatot létesíteni az Event Hubs szolgáltatással. Győződjön meg arról, hogy a megadott gazdagép neve helyes, és a gazdagép elérhető. Az újrapróbálkozás segíthet, ha időszakos csatlakozási problémák merülnek fel.
Microsoft.ServiceBus.Messaging ServerBusyException

Microsoft.Azure.EventHubs ServerBusyException
A szolgáltatás jelenleg nem tudja feldolgozni a kérést. Az ügyfél várhat egy ideig, majd próbálkozzon újra a művelettel.
Lásd: ServerBusyException.
Az ügyfél bizonyos időközönként újrapróbálkozhat. Ha egy újrapróbálkozás más kivételt eredményez, ellenőrizze a kivétel újrapróbálkozásának viselkedését.
MessagingException Általános üzenetkezelési kivétel, amely a következő esetekben fordulhat elő: A QueueClient létrehozása egy másik entitástípushoz (például egy témakörhöz) tartozó név vagy elérési út használatával történik. Egy 1 MB-nál nagyobb üzenet küldésére tett kísérlet. A kiszolgáló vagy szolgáltatás hibát észlelt a kérés feldolgozása során. Részletekért tekintse meg a kivételről szóló üzenetet. Ez a kivétel általában átmeneti kivétel. Ellenőrizze a kódot, és győződjön meg arról, hogy csak szerializálható objektumokat használ az üzenet törzséhez (vagy egyéni szerializálót használ). Ellenőrizze a tulajdonságok támogatott értéktípusait a dokumentációban, és csak a támogatott típusokat használja. Ellenőrizze az IsTransient tulajdonságot. Ha igaz, újrapróbálhatja a műveletet. Az újrapróbálkozás viselkedése nincs meghatározva, és lehet, hogy nem segít.
MessagingEntityAlreadyExistsException Olyan entitás létrehozása, amelynek neve már szerepel a szolgáltatásnévtérben egy másik entitás által használt névvel. Törölje a meglévő entitást, vagy válasszon másik nevet a létrehozandó entitásnak. Az újrapróbálkozás nem segít.
QuotaExceededException Az üzenetkezelési entitás elérte a maximálisan megengedett méretet. Ez a kivétel akkor fordulhat elő, ha a fogadók maximális száma (ami 5) már meg van nyitva fogyasztói csoportonkénti szinten. Hozzon létre szóközt az entitásban, ha üzeneteket fogad az entitástól vagy annak alqueu-jaitól.
Lásd: QuotaExceededException
Az újrapróbálkozás segíthet, ha az üzenetek időközben el lettek távolítva.
MessagingEntityDisabledException Futásidejű művelet kérése letiltott entitáson. Aktiválja az entitást. Az újrapróbálkozás segíthet, ha az entitást időközben aktiválták.
Microsoft.ServiceBus.Messaging MessageSizeExceededException

Microsoft.Azure.EventHubs MessageSizeExceededException
Az üzenet hasznos adatai túllépik az 1 MB-os korlátot. Ez az 1 MB-os korlát a teljes üzenetre vonatkozik, amely tartalmazhat rendszertulajdonságokat és .NET-többletterheléseket. Csökkentse az üzenet hasznos adatainak méretét, majd próbálkozzon újra a művelettel. Az újrapróbálkozás nem segít.

QuotaExceededException

A QuotaExceededException kivétel azt jelzi, hogy túllépte az adott entitáshoz tartozó kvótát.

Ez a kivétel akkor fordulhat elő, ha a fogadók maximális száma (5) már meg van nyitva fogyasztói csoportonkénti szinten.

Event Hubs

Az Event Hubs eseményközpontonként legfeljebb 20 fogyasztói csoportot hozhat létre. Ha továbbiak létrehozására próbál meg kísérletet tenni, a QuotaExceededException parancsot kapja.

TimeoutException

A TimeoutException kivétel azt jelzi, hogy egy felhasználó által kezdeményezett művelet hosszabb időt vesz igénybe, mint az ahhoz kapcsolódó időtúllépési korlát.

Az Event Hubsnál az időtúllépés a kapcsolati sztring részeként van meghatározva, vagy a ServiceBusConnectionStringBuilder elemen keresztül. Maga a hibaüzenet eltérő lehet, de mindig tartalmazza az aktuális művelethez megadott időtúllépési értéket.

Időtúllépésekre várhatóan a karbantartási műveletek során vagy azok között kerül sor, például az Event Hubs szolgáltatásfrissítései (vagy) a szolgáltatást futtató erőforrások operációsrendszer-frissítései során vagy között. Az operációs rendszer frissítései során egyes entitások áthelyeződnek, és a csomópontok frissülnek vagy újraindulnak, ami időtúllépéseket okozhat. Az Azure Event Hubs szolgáltatás szolgáltatásiszint-szerződéssel (SLA) kapcsolatos részleteiért tekintse meg az Event Hubshoz készült SLA-t.

Common causes

A hiba két gyakori oka lehet: helytelen konfiguráció vagy átmeneti szolgáltatáshiba.

  • Helytelen konfiguráció A művelet időtúllépése túl kicsi lehet a működési feltételhez. Az ügyfél SDK-ban a művelet időtúllépésének alapértelmezett értéke 60 másodperc. Ellenőrizze, hogy a kód értéke túl kicsi-e. A hálózat és a CPU-használat állapota befolyásolhatja egy adott művelet befejezéséhez szükséges időt, ezért a művelet időtúllépése nem állítható be kis értékre.
  • Átmeneti szolgáltatáshiba : Előfordulhat, hogy az Event Hubs szolgáltatás késést tapasztal a kérések feldolgozása során, például nagy forgalmú időszakokban. Ilyen esetekben egy késleltetés után újrapróbálkozhat a művelettel, amíg a művelet sikeres nem lesz. Ha ugyanaz a művelet több kísérlet után is meghiúsul, látogasson el az Azure szolgáltatásállapot-webhelyére , és ellenőrizze, hogy vannak-e ismert szolgáltatáskimaradások.

ServerBusyException

A Microsoft.ServiceBus.Messaging.ServerBusyException vagy a Microsoft.Azure.EventHubs.ServerBusyException azt jelzi, hogy a kiszolgáló túlterhelt. Ehhez a kivételhez két vonatkozó hibakód van.

Hibakód: 50002

Ez a hiba két okból fordulhat elő:

  • A terhelés nem egyenletesen oszlik el az eseményközpont összes partícióján, és egy partíció eléri a helyi átviteli egység korlátozását.

    Megoldás: A partícióelosztási stratégia felülvizsgálata vagy az EventHubClient.Send(eventDataWithOutPartitionKey) kipróbálása segíthet.

  • Az Event Hubs-névtér nem rendelkezik elegendő átviteli egységekkel (az Azure Portal Event Hubs névtérablakában ellenőrizheti a Metrikák képernyőt). A portál összesített (1 perces) adatokat jelenít meg, de valós időben mérjük az átviteli sebességet – tehát ez csak becslés.

    Megoldás: A névtér átviteli sebességegységeinek növelése segíthet.

    Az átviteli egységek konfigurálhatók az Event Hubs névtérlapjának Méretezés vagy Áttekintés lapján az Azure Portalon. Vagy használhatja az automatikus felskálázást is, amely automatikusan felskálázható az átviteli egységek számának növelésével a használati igények kielégítése érdekében.

    Az átviteli egységek (TU-k) az Event Hubs-névtérben lévő összes eseményközpontra érvényesek. Ez azt jelenti, hogy a névtér szintjén vásárol tusokat, és az adott névtér alatt az eseményközpontok között meg vannak osztva. Minden tu a következő képességekre jogosítja fel a névteret:

    • Legfeljebb másodpercenként 1 MB-nyi beáramlási esemény (az eseményközpontba küldött események), de legfeljebb másodpercenként 1000 beáramlási esemény, kezelési művelet vagy vezérlő API hívás.
    • Legfeljebb másodpercenként 2 MB-nyi kimenőforgalom-esemény (az eseményközpontból felhasznált események), de legfeljebb 4096 kimenőforgalom-esemény.
    • Legfeljebb 84 GB eseménytároló (elegendő az alapértelmezett 1 órás megőrzési időszakhoz).

    Az Áttekintés lapon, a Metrikák megjelenítése szakaszban váltson az Átviteli sebesség lapra. Jelölje ki a diagramot egy nagyobb ablakban, az x tengelyen 1 perces időközökkel. Tekintse meg a csúcsértékeket, és ossza el őket 60-tal a bejövő bájt/másodperc vagy a kimenő bájt/másodperc lekéréséhez. Hasonló módszerrel kiszámíthatja a másodpercenkénti kérelmek számát csúcsidőben a Kérések lapon.

    Ha a TU-korlátoknál nagyobb értékeket lát (bejövő vagy 1000 bejövő/másodperces kérelem esetén másodpercenként 1 MB, kimenő forgalom esetén 2 MB/s), növelje a TU-k számát az Event Hubs-névtér Méretezés (bal oldali menü) lapján a manuális skálázáshoz vagy az Event Hubs automatikus felfújási funkciójának használatához. A névtér manuális skálázása vagy automatikus méretezése esetén akár 40 TU-t is skálázhat.

Hibakód: 50008

Ez a hiba ritkán fordul elő. Ez akkor fordul elő, ha a névtér kódját futtató tároló processzora alacsony – legfeljebb néhány másodperccel az Event Hubs terheléselosztójának megkezdése előtt.

Megoldás: A GetRuntimeInformation metódus hívásainak korlátozása. Az Azure Event Hubs másodpercenként legfeljebb 50 hívást támogat fogyasztói csoportonként a GetRuntimeInfo felé másodpercenként. A korlát elérése után a következőhöz hasonló kivételt kaphat:

ExceptionId: 00000000000-00000-0000-a48a-9c908fbe84f6-ServerBusyException: The request was terminated because the namespace 75248:aaa-default-eventhub-ns-prodb2b is being throttled. Error code : 50008. Please wait 10 seconds and try again.

Következő lépések

Az alábbi webhelyeken további információt talál az Event Hubsról: