Dela via


Hämta meddelanderäknare

Den här artikeln visar olika sätt att få meddelandeantal för en kö eller prenumeration. Att känna till antalet aktiva meddelanden är användbart för att avgöra om en kö skapar en kvarvarande information som kräver mer resurser för att bearbeta än vad som för närvarande har distribuerats.

Räknare Description
ActiveMessageCount Antal meddelanden i kön eller prenumerationen som är i aktivt tillstånd och redo för leverans.
ScheduledMessageCount Antal meddelanden i schemalagt tillstånd.
DeadLetterMessageCount Antal meddelanden i kön med obeställbara meddelanden.
TransferMessageCount Antal meddelanden som väntar på överföring till en annan kö eller ett annat ämne.
TransferDeadLetterMessageCount Antal meddelanden som inte kunde överföras till en annan kö eller ett annat ämne och som har flyttats till kön med obeställbara meddelanden.

Om ett program vill skala resurser baserat på köns längd bör det göra det med en uppmätt takt. Förvärvet av meddelanderäknarna är en dyr åtgärd i meddelandeköerna och att köra den ofta direkt och påverkar entitetens prestanda negativt.

Kommentar

Meddelandena som skickas till ett Service Bus-ämne vidarebefordras till prenumerationer för det ämnet. Antalet aktiva meddelanden i själva ämnet är alltså 0, eftersom dessa meddelanden har vidarebefordrats till prenumerationen. Hämta antalet meddelanden i prenumerationen och kontrollera att det är större än 0. Även om du ser meddelanden i prenumerationen lagras de faktiskt i en lagring som ägs av ämnet. Om du tittar på prenumerationerna skulle de ha icke-noll meddelandeantal (vilket ger upp till 323 MB utrymme för hela den här entiteten).

Med Azure Portal

Gå till namnområdet och välj kön. Du ser meddelanderäknare på sidan Översikt för kön.

Screenshot showing the Overview page of a queue with the Message Counts section highlighted.

Gå till namnområdet, välj ämnet och välj sedan prenumerationen för ämnet. Du ser meddelanderäknare på sidan Översikt för kön.

Screenshot showing the Overview page of a topic's subscription with the Message Counts section highlighted.

Använda Azure CLI

az servicebus queue show Använd kommandot för att hämta information om antal meddelanden för en kö enligt följande exempel.

az servicebus queue show --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --name myqueue \
    --query countDetails

Här är ett exempel på utdata:

ActiveMessageCount    DeadLetterMessageCount    ScheduledMessageCount    TransferMessageCount    TransferDeadLetterMessageCount
--------------------  ------------------------  -----------------------  ----------------------  --------------------------------
0                     0                         0                        0                       0

az servicebus topic subscription show Använd kommandot för att hämta information om antal meddelanden för en prenumeration enligt följande exempel.

az servicebus topic subscription show --resource-group myresourcegroup \
    --namespace-name mynamespace \
    --topic-name mytopic \
    --name mysub \
    --query countDetails

Använda Azure PowerShell

Med PowerShell kan du hämta information om antalet meddelanden för en kö enligt följande:

$queueObj=Get-AzServiceBusQueue -ResourceGroup myresourcegroup `
                    -NamespaceName mynamespace `
                    -QueueName myqueue 

$queueObj.CountDetails

Här är exempelutdata:

ActiveMessageCount             : 7
DeadLetterMessageCount         : 1
ScheduledMessageCount          : 3
TransferMessageCount           : 0
TransferDeadLetterMessageCount : 0

du kan hämta information om antalet meddelanden för en prenumeration på följande sätt:

$topicObj= Get-AzServiceBusSubscription -ResourceGroup myresourcegroup `
                -NamespaceName mynamespace `
                -TopicName mytopic `
                -SubscriptionName mysub

$topicObj.CountDetails

Det returnerade MessageCountDetails objektet har följande egenskaper: ActiveMessageCount, DeadLetterMessageCount, ScheduledMessageCount, TransferDeadLetterMessageCount, . TransferMessageCount

Nästa steg

Prova exemplen på det språk du väljer för att utforska Azure Service Bus-funktioner.

Hitta exempel för de äldre .NET- och Java-klientbiblioteken nedan:

Den 30 september 2026 drar vi tillbaka Azure Service Bus SDK-biblioteken WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus och com.microsoft.azure.servicebus, som inte följer Riktlinjerna för Azure SDK. Vi kommer också att avsluta stödet för SBMP-protokollet, så du kommer inte längre att kunna använda det här protokollet efter den 30 september 2026. Migrera till de senaste Azure SDK-biblioteken, som erbjuder kritiska säkerhetsuppdateringar och förbättrade funktioner, före det datumet.

Även om de äldre biblioteken fortfarande kan användas efter den 30 september 2026 får de inte längre officiell support och uppdateringar från Microsoft. Mer information finns i meddelandet om supportavgång.