Verlopen van berichten inschakelen voor Azure Service Bus-wachtrijen en -abonnementen
Azure Service Bus-wachtrijen en -abonnementen voor onderwerpen bieden een secundaire submap, een wachtrij met dode letters (DLQ). De wachtrij met onbestelbare berichten hoeft niet expliciet te worden gemaakt en kan niet worden verwijderd of onafhankelijk van de hoofdentiteit worden beheerd. Het doel van de wachtrij met onbestelbare berichten is berichten te bewaren die niet kunnen worden bezorgd bij een ontvanger of berichten die niet kunnen worden verwerkt. Zie Overzicht van wachtrijen met dode letters van Service Bus voor meer informatie. In dit artikel vindt u verschillende manieren om dead lettering in te schakelen voor Service Bus-wachtrijen en -abonnementen.
Azure-portal gebruiken
Wanneer u een wachtrij of een abonnement voor een onderwerp in Azure Portal maakt, selecteert u Dead lettering inschakelen bij het verlopen van berichten, zoals wordt weergegeven in de volgende voorbeelden.
Een wachtrij maken waarvoor dead lettering is ingeschakeld
Een abonnement maken waarvoor dead lettering is ingeschakeld
De instelling voor verlopen berichten bijwerken voor een bestaande wachtrij
Selecteer op de pagina Overzicht voor uw Service Bus-wachtrij de huidige waarde voor de instelling Voor het verlopen van berichten. In het volgende voorbeeld is de huidige waarde uitgeschakeld. U kunt dead lettering in- of uitschakelen voor het verlopen van berichten in het pop-upvenster.
De instelling voor verlopen berichten bijwerken voor een bestaand abonnement
Selecteer op de pagina Overzicht voor uw Service Bus-abonnement de huidige waarde voor de instelling Voor het verlopen van berichten. In het volgende voorbeeld is de huidige waarde uitgeschakeld. U kunt dead lettering in- of uitschakelen voor het verlopen van berichten in het pop-upvenster.
Azure CLI gebruiken
Als u een wachtrij wilt maken met een verlopen bericht, gebruikt u de az servicebus queue create
opdracht die --enable-dead-lettering-on-message-expiration
is ingesteld op true
.
az servicebus queue create \
--resource-group myresourcegroup \
--namespace-name mynamespace \
--name myqueue \
--enable-dead-lettering-on-message-expiration true
Als u de instelling voor het verlopen van berichten voor een bestaande wachtrij wilt inschakelen, gebruikt u de az servicebus queue update
opdracht die is --enable-dead-lettering-on-message-expiration
ingesteld op true
.
az servicebus queue update \
--resource-group myresourcegroup \
--namespace-name mynamespace \
--name myqueue \
--enable-dead-lettering-on-message-expiration true
Als u een abonnement wilt maken op een onderwerp waarvoor een verlopen bericht is uitgeschakeld, gebruikt u de az servicebus topic subscription create
opdracht waarop --enable-dead-lettering-on-message-expiration
is ingesteld true
.
az servicebus topic subscription create \
--resource-group myresourcegroup \
--namespace-name mynamespace \
--topic-name mytopic \
--name mysubscription \
--enable-dead-lettering-on-message-expiration true
Als u de instelling voor het verlopen van berichten voor een abonnement op een onderwerp wilt inschakelen, gebruikt u de az servicebus topic subscription update
opdracht met --enable-dead-lettering-on-message-expiration
settrue
.
az servicebus topic subscription update \
--resource-group myresourcegroup \
--namespace-name mynamespace \
--topic-name mytopic \
--name mysubscription \
--enable-dead-lettering-on-message-expiration true
Notitie
Als u een wachtrij of onderwerp opgeeft met behulp van de --forward-dead-lettered-messages-to
parameter, stuurt Service Bus berichten met onbestelbare berichten automatisch door naar die wachtrij of dat onderwerp. Hier is een voorbeeld: az servicebus queue create --resource-group mysbusrg --namespace-name mysbusns --name myqueue --enable-dead-lettering-on-message-expiration true --forward-dead-lettered-messages-to myqueue2
.
Azure PowerShell gebruiken
Als u een wachtrij wilt maken met een verlopen bericht, gebruikt u de New-AzServiceBusQueue
opdracht die -DeadLetteringOnMessageExpiration
is ingesteld op $True
.
New-AzServiceBusQueue -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-QueueName myqueue `
-DeadLetteringOnMessageExpiration $True
Als u de instelling voor verlopen berichten voor een bestaande wachtrij wilt inschakelen, gebruikt u de Set-AzServiceBusQueue
opdracht zoals wordt weergegeven in het volgende voorbeeld.
$queue=Get-AzServiceBusQueue -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-QueueName myqueue
$queue.DeadLetteringOnMessageExpiration=$True
Set-AzServiceBusQueue -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-QueueName myqueue `
-QueueObj $queue
Als u een abonnement wilt maken voor een onderwerp waarvoor een verlopen bericht is uitgeschakeld, gebruikt u de New-AzServiceBusSubscription
opdracht die -DeadLetteringOnMessageExpiration
is ingesteld op $True
.
New-AzServiceBusSubscription -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-TopicName mytopic `
-SubscriptionName mysubscription `
-DeadLetteringOnMessageExpiration $True
Zie het volgende voorbeeld om de instelling voor verlopen berichten in te schakelen voor een bestaand abonnement.
$subscription=Get-AzServiceBusSubscription -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-TopicName mytopic `
-SubscriptionName mysub
$subscription.DeadLetteringOnMessageExpiration=$True
Set-AzServiceBusSubscription -ResourceGroup myresourcegroup `
-NamespaceName mynamespace `
-Name mytopic `
-SubscriptionName mysub `
-SubscriptionObj $subscription
Notitie
Als u een wachtrij of onderwerp opgeeft met behulp van de -ForwardDeadLetteredMessagesTo
parameter, stuurt Event Grid berichten met een lege letter automatisch door naar die wachtrij of dat onderwerp.
Azure Resource Manager-sjabloon gebruiken
Als u een wachtrij wilt maken met dode letters voor verlopen berichten ingeschakeld, stelt u deadLetteringOnMessageExpiration
in de sectie Wachtrijeigenschappen in op true
. Zie de sjabloonreferenties voor Microsoft.ServiceBus-naamruimten/wachtrijen voor meer informatie.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serviceBusNamespaceName": {
"type": "string",
"metadata": {
"description": "Name of the Service Bus namespace"
}
},
"serviceBusQueueName": {
"type": "string",
"metadata": {
"description": "Name of the Queue"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"type": "Microsoft.ServiceBus/namespaces",
"apiVersion": "2018-01-01-preview",
"name": "[parameters('serviceBusNamespaceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard"
},
"properties": {},
"resources": [
{
"type": "Queues",
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusQueueName')]",
"dependsOn": [
"[resourceId('Microsoft.ServiceBus/namespaces', parameters('serviceBusNamespaceName'))]"
],
"properties": {
"deadLetteringOnMessageExpiration": true
}
}
]
}
]
}
Als u een abonnement wilt maken voor een onderwerp met een dode lettering voor het verlopen van berichten, stelt u deadLetteringOnMessageExpiration
in de sectie Eigenschappen van de wachtrij in op true
. Zie Microsoft.ServiceBus-naamruimten/onderwerpen/abonnementensjabloonreferenties voor meer informatie.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"service_BusNamespace_Name": {
"type": "string",
"metadata": {
"description": "Name of the Service Bus namespace"
}
},
"serviceBusTopicName": {
"type": "string",
"metadata": {
"description": "Name of the Topic"
}
},
"serviceBusSubscriptionName": {
"type": "string",
"metadata": {
"description": "Name of the Subscription"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"apiVersion": "2018-01-01-preview",
"name": "[parameters('service_BusNamespace_Name')]",
"type": "Microsoft.ServiceBus/namespaces",
"location": "[parameters('location')]",
"sku": {
"name": "Standard"
},
"properties": {},
"resources": [
{
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusTopicName')]",
"type": "topics",
"dependsOn": [
"[resourceId('Microsoft.ServiceBus/namespaces/', parameters('service_BusNamespace_Name'))]"
],
"properties": {
"maxSizeInMegabytes": 1024
},
"resources": [
{
"apiVersion": "2017-04-01",
"name": "[parameters('serviceBusSubscriptionName')]",
"type": "Subscriptions",
"dependsOn": [
"[parameters('serviceBusTopicName')]"
],
"properties": {
"deadLetteringOnMessageExpiration": true
}
}
]
}
]
}
]
}
Notitie
Als u een wachtrij of onderwerp voor de forwardDeadLetteredMessagesTo
eigenschap opgeeft, worden in Event Grid berichten met onbeletterde berichten automatisch doorgestuurd naar die wachtrij of dat onderwerp.
Volgende stappen
Probeer de voorbeelden in de taal van uw keuze om Azure Service Bus-functies te verkennen.
- Voorbeelden van Azure Service Bus-clientbibliotheek voor .NET (nieuwste)
- Voorbeelden van Azure Service Bus-clientbibliotheek voor Java (nieuwste versie)
- Voorbeelden van Azure Service Bus-clientbibliotheek voor Python
- Voorbeelden van Azure Service Bus-clientbibliotheek voor JavaScript
- Voorbeelden van Azure Service Bus-clientbibliotheek voor TypeScript
Voorbeelden zoeken voor de oudere .NET- en Java-clientbibliotheken:
- Voorbeelden van Azure Service Bus-clientbibliotheek voor .NET (verouderd)
- Voorbeelden van Azure Service Bus-clientbibliotheek voor Java (verouderd)
Op 30 september 2026 gaan we de Azure Service Bus SDK-bibliotheken WindowsAzure.ServiceBus, Microsoft.Azure.ServiceBus en com.microsoft.azure.servicebus buiten gebruik stellen, die niet voldoen aan de Azure SDK-richtlijnen. We beëindigen ook de ondersteuning van het SBMP-protocol, zodat u dit protocol na 30 september 2026 niet meer kunt gebruiken. Migreer naar de nieuwste Azure SDK-bibliotheken, die vóór die datum essentiële beveiligingsupdates en verbeterde mogelijkheden bieden.
Hoewel de oudere bibliotheken nog steeds meer dan 30 september 2026 kunnen worden gebruikt, ontvangen ze geen officiële ondersteuning en updates meer van Microsoft. Zie de aankondiging van de buitengebruikstelling van de ondersteuning voor meer informatie.