İleti sayaçlarını al

Bu makalede, bir kuyruk veya abonelik için aşağıdaki ileti sayılarını almanın farklı yolları gösterir. Etkin ileti sayısını bilmek, kuyruğun iş için şu anda dağıtılmış olandan daha fazla kaynak gerektiren bir biriktirme listesi oluşturması gerekip gerek olmadığını belirlemek için yararlıdır.

Sayaç Açıklama
ActiveMessageCount Kuyrukta veya abonelikte etkin durumda olan ve teslime hazır ileti sayısı.
ScheduledMessageCount Zamanlanmış durumdaki ileti sayısı.
DeadLetterMessageCount İleti olmayan ileti kuyruğunda ileti sayısı.
TransferMessageCount Başka bir kuyruğa veya konuya aktarmayı bekleyen ileti sayısı.
TransferDeadLetterMessageCount Başka bir kuyruğa veya konuya aktaramayan ve aktarımda olmayan ileti kuyruğuna taşınan ileti sayısı.

Bir uygulama, kaynakları kuyruğun uzunluğuna göre ölçeklendirmek istiyorsa, bunu ölçülen bir hızda yapar. İleti sayaçlarının alınması, ileti aracısı içinde pahalı bir işlemdir ve bunu sık sık doğrudan yürütür ve varlık performansını olumsuz yönde etkiler.

Not

Bir konu başlığına gönderilen Service Bus bu konu başlığı için aboneliklere iletilmesi. Bu nedenle, konu başlığında etkin ileti sayısı 0'dır, bu iletiler aboneliğe başarıyla iletildi. Abonelikte ileti sayısını alın ve 0'dan büyük olduğunu doğrulayın. Abonelikte iletiler görüyorsanız bile, bunlar aslında konu başlığına ait bir depolamada depolanır. Aboneliklere bakarsanız, bu aboneliklerin ileti sayısı sıfır değildir (bu, varlığın tamamı için en fazla 323 MB alan ekler).

Azure portalını kullanma

Ad alanınıza gidin ve kuyruğu seçin. Kuyruğun Genel Bakış sayfasında ileti sayaçlarını görebilirsiniz.

Kuyruk genel bakış sayfasındaki ileti sayaçları

Ad alanınıza gidin, konuyu seçin ve ardından konu için aboneliği seçin. Kuyruğun Genel Bakış sayfasında ileti sayaçlarını görebilirsiniz.

Aboneliğe genel bakış sayfasındaki ileti sayaçları

Azure CLI’yı kullanma

Aşağıdaki az servicebus queue show örnekte gösterildiği gibi bir kuyruğun ileti sayısı ayrıntılarını almak için komutunu kullanın.

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

Örnek bir çıkış şu şekildedir:

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

Aşağıdaki az servicebus topic subscription show örnekte gösterildiği gibi bir aboneliğin ileti sayısı ayrıntılarını almak için komutunu kullanın.

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

Azure PowerShell’i kullanma

PowerShell ile bir kuyruğun ileti sayısı ayrıntılarını aşağıdaki gibi alabilirsiniz:

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

$queueObj.CountDetails

Örnek çıkış şu şekildedir:

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

Bir aboneliğin ileti sayısı ayrıntılarını aşağıdaki gibi alabilirsiniz:

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

$topicObj.CountDetails

Döndürülen nesne MessageCountDetails şu özelliklere sahiptir: ActiveMessageCount , , , , DeadLetterMessageCount ScheduledMessageCount TransferDeadLetterMessageCount TransferMessageCount .

Sonraki adımlar

Diğer özellikleri keşfetmek için örnekleri tercih Azure Service Bus deneyin.

Eski .NET ve Java istemci kitaplıkları için örnekleri aşağıda bulabilirsiniz: