Získání čítačů zpráv
Tento článek ukazuje různé způsoby získání počtu zpráv pro frontu nebo odběr. Znalost počtu aktivních zpráv je užitečná při určování, jestli fronta sestaví backlog, který k zpracování vyžaduje více prostředků, než kolik je aktuálně nasazeno.
Čítač | Popis |
---|---|
ActiveMessageCount | Počet zpráv ve frontě nebo odběru, které jsou v aktivním stavu a připravené k doručení To zahrnuje odložené zprávy. |
ScheduledMessageCount | Počet zpráv v naplánovaném stavu |
DeadLetterMessageCount | Počet zpráv ve frontě nedoručených zpráv |
TransferMessageCount | Počet zpráv čekajících na přenos do jiné fronty nebo tématu |
TransferDeadLetterMessageCount | Počet zpráv, které se nepodařilo přenést do jiné fronty nebo tématu, a byly přesunuty do fronty pro přenos nedoručených zpráv. |
Pokud aplikace chce škálovat prostředky na základě délky fronty, měla by to provést s měřením tempa. Získání čítačů zpráv je nákladná operace uvnitř zprostředkovatele zpráv a často ji spouští přímo a nepříznivě ovlivňuje výkon entity.
Další užitečnou metrikou, kterou je potřeba zvážit pro škálování, je doba mezi odesláním nejnovější zprávy a jejím zpracováním, označovanou také jako "kritická doba". To je užitečné ve scénářích, kdy fronta může obsahovat tisíce zpráv, ale zpracování je dostatečně rychlé, aby se udrželo vzhůru, což dává "kritický čas" jenom pár sekund, což může být víc než dost pro něco jako koncový bod pro odeslání e-mailu. Knihovny třetích stran, jako je NServiceBus, generují tuto a další užitečné metriky prostřednictvím OpenTelemetry.
Poznámka:
Zprávy odeslané do tématu služby Service Bus se přepošle odběrům daného tématu. Počet aktivních zpráv na samotném tématu je tedy 0, protože se tyto zprávy úspěšně přeposílaly do odběru. Získejte počet zpráv v předplatném a ověřte, že je větší než 0. I když se v odběru zobrazují zprávy, ve skutečnosti se ukládají do úložiště vlastněného tématem. Pokud se podíváte na předplatná, budou mít nenulový počet zpráv, které přispívají k úložišti používanému tématem.
Pomocí webu Azure Portal
Přejděte do svého oboru názvů a vyberte frontu. Čítače zpráv se zobrazí na stránce Přehled fronty.
Přejděte do svého oboru názvů, vyberte téma a pak vyberte předplatné tématu. Čítače zpráv se zobrazí na stránce Přehled fronty.
Pomocí Azure CLI
az servicebus queue show
Pomocí příkazu získáte podrobnosti o počtu zpráv pro frontu, jak je znázorněno v následujícím příkladu.
az servicebus queue show --resource-group myresourcegroup \
--namespace-name mynamespace \
--name myqueue \
--query countDetails
Tady je ukázkový výstup:
ActiveMessageCount DeadLetterMessageCount ScheduledMessageCount TransferMessageCount TransferDeadLetterMessageCount
-------------------- ------------------------ ----------------------- ---------------------- --------------------------------
0 0 0 0 0
az servicebus topic subscription show
Pomocí příkazu získejte podrobnosti o počtu zpráv pro odběr, jak je znázorněno v následujícím příkladu.
az servicebus topic subscription show --resource-group myresourcegroup \
--namespace-name mynamespace \
--topic-name mytopic \
--name mysub \
--query countDetails
Použití Azure Powershell
Pomocí PowerShellu můžete získat podrobnosti o počtu zpráv pro frontu následujícím způsobem:
$queueObj=Get-AzServiceBusQueue -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-QueueName myqueue
$queueObj.CountDetails
Tady je ukázkový výstup:
ActiveMessageCount : 7
DeadLetterMessageCount : 1
ScheduledMessageCount : 3
TransferMessageCount : 0
TransferDeadLetterMessageCount : 0
Podrobnosti o počtu zpráv pro odběr můžete získat následujícím způsobem:
$topicObj= Get-AzServiceBusSubscription -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-TopicName mytopic `
-SubscriptionName mysub
$topicObj.CountDetails
Vrácený MessageCountDetails
objekt má následující vlastnosti: ActiveMessageCount
, DeadLetterMessageCount
, ScheduledMessageCount
, TransferDeadLetterMessageCount
, TransferMessageCount
.
Další kroky
Vyzkoušejte ukázky v jazyce podle vašeho výběru a prozkoumejte funkce služby Azure Service Bus.
- Ukázky klientské knihovny služby Azure Service Bus pro .NET (nejnovější)
- Ukázky klientské knihovny služby Azure Service Bus pro Javu (nejnovější)
- Ukázky klientské knihovny služby Azure Service Bus pro Python
- Ukázky klientské knihovny služby Azure Service Bus pro JavaScript
- Ukázky klientské knihovny služby Azure Service Bus pro TypeScript
Ukázky pro starší klientské knihovny .NET a Java najdete níže:
- Ukázky klientské knihovny služby Azure Service Bus pro .NET (starší verze)
- Ukázky klientské knihovny služby Azure Service Bus pro Javu (starší verze)
30. září 2026 vyřadíme knihovny sady SDK služby Azure Service Bus pro WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus a com.microsoft.azure.servicebus, které nevyhovují pokynům sady Azure SDK. Také ukončíme podporu protokolu SBMP, takže tento protokol už nebudete moct používat po 30. září 2026. Před tímto datem migrujte na nejnovější knihovny sady Azure SDK, které nabízejí důležité aktualizace zabezpečení a vylepšené funkce.
I když starší knihovny je možné používat i po 30. září 2026, nebudou už od Microsoftu dostávat oficiální podporu a aktualizace. Další informace najdete v oznámení o vyřazení podpory.