integratie .NET AspireAzure Service Bus
Omvat: Hostingintegratie en
Client-integratie
Azure Service Bus is een volledig beheerde enterprise-berichtenbroker met berichtenwachtrijen en onderwerpen over publiceren/abonneren. Met de integratie van .NET AspireAzure Service Bus kunt u vanuit Azure Service Bus toepassingen verbinding maken met .NET exemplaren.
Hostingintegratie
De .NET.NET AspireAzure Service Bus hostintegratiemodellen de verschillende Service Bus-resources als de volgende typen:
- AzureServiceBusResource: vertegenwoordigt een Azure Service Bus resource.
- AzureServiceBusEmulatorResource: vertegenwoordigt een Azure Service Bus emulator-bron.
Als u toegang wilt krijgen tot deze typen en API's om ze uit te drukken, voegt u de 📦Aspire.Hosting.Azure.ServiceBus NuGet-pakket aan het app host project toe.
dotnet add package Aspire.Hosting.Azure.ServiceBus
Zie dotnet pakket toevoegen of Pakketafhankelijkheden beheren in .NET toepassingenvoor meer informatie.
Azure Service Bus-resource toevoegen
Roep in uw app-hostproject AddAzureServiceBus aan om een Azure Service Bus resourcebuilder toe te voegen en te retourneren.
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging");
// After adding all resources, run the app...
Wanneer u een AzureServiceBusResource toevoegt aan de app-host, worden er andere nuttige API's weergegeven om wachtrijen en onderwerpen toe te voegen. Met andere woorden, u moet een AzureServiceBusResource
toevoegen voordat u een van de andere Service Bus-resources toevoegt.
Belangrijk
Wanneer u AddAzureServiceBusaanroept, wordt impliciet AddAzureProvisioningaangeroepen. Hiermee wordt ondersteuning toegevoegd voor het dynamisch genereren van Azure resources tijdens het opstarten van de app. De app moet het juiste abonnement en de juiste locatie configureren. Zie Configurationvoor meer informatie.
Gegenereerde implementatie Bicep
Als u nieuw bent met Bicep, is het een domeinspecifieke taal voor het definiëren van Azure bronnen. Met .NET.NET Aspirehoeft u bicep niet handmatig te schrijven, in plaats daarvan genereren de inrichtings-API's Bicep voor u. Wanneer u uw app publiceert, wordt de gegenereerde Bicep samen met het manifestbestand weergegeven. Wanneer u een Azure Service Bus resource toevoegt, wordt de volgende Bicep gegenereerd:
@description('The location for the resource(s) to be deployed.')
param location string = resourceGroup().location
param sku string = 'Standard'
param principalType string
param principalId string
resource service_bus 'Microsoft.ServiceBus/namespaces@2024-01-01' = {
name: take('servicebus-${uniqueString(resourceGroup().id)}', 50)
location: location
properties: {
disableLocalAuth: true
}
sku: {
name: sku
}
tags: {
'aspire-resource-name': 'service-bus'
}
}
resource service_bus_AzureServiceBusDataOwner 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
name: guid(service_bus.id, principalId, subscriptionResourceId('Microsoft.Authorization/roleDefinitions', '090c5cfd-751d-490a-894a-3ce6f1109419'))
properties: {
principalId: principalId
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', '090c5cfd-751d-490a-894a-3ce6f1109419')
principalType: principalType
}
scope: service_bus
}
output serviceBusEndpoint string = service_bus.properties.serviceBusEndpoint
De voorgaande Bicep is een module die een Azure Service Bus naamruimte in richt met de volgende standaardwaarden:
-
sku
: de SKU van de Service Bus-naamruimte. De standaardwaarde is Standard. -
location
: de locatie voor de Service Bus-naamruimte. De standaardwaarde is de locatie van de resourcegroep.
Naast de Service Bus-naamruimte wordt ook een ingebouwde Azure rol van gegevenseigenaar binnen Azure rollen-gebaseerd toegangsbeheer (Azure Service Bus RBAC) voorzien. De rol is toegewezen aan de resourcegroep van de Service Bus-naamruimte. Zie Azure Service Bus Gegevenseigenaarvoor meer informatie.
Voorzieningsinfrastructuur personaliseren
Alle .NET AspireAzure resources zijn subklassen van het AzureProvisioningResource type. Met dit type kunt u de gegenereerde Bicep aanpassen door een vloeiende API te bieden waarmee u de Azure-resources kunt configureren, met behulp van de ConfigureInfrastructure<T>(IResourceBuilder<T>, Action<AzureResourceInfrastructure>)-API. U kunt bijvoorbeeld de sku, locatie en meer configureren. In het volgende voorbeeld ziet u hoe u de Azure Service Bus resource kunt aanpassen:
builder.AddAzureServiceBus("service-bus")
.ConfigureInfrastructure(infra =>
{
var serviceBusNamespace = infra.GetProvisionableResources()
.OfType<ServiceBusNamespace>()
.Single();
serviceBusNamespace.Sku = new ServiceBusSku
{
Tier = ServiceBusSkuTier.Premium
};
serviceBusNamespace.Tags.Add("ExampleKey", "Example value");
});
De voorgaande code:
- Koppelt een aanroep naar de ConfigureInfrastructure-API:
- De infraparameter is een exemplaar van het AzureResourceInfrastructure type.
- De voorzienbare resources worden opgehaald door middel van de GetProvisionableResources() methode.
- Het enige exemplaar ServiceBusNamespace wordt opgehaald.
- De ServiceBusNamespace.Sku gecreëerd met een ServiceBusSkuTier.Premium
- Er wordt een tag toegevoegd aan de Service Bus-naamruimte met een sleutel van
ExampleKey
en een waarde vanExample value
.
Er zijn nog veel meer configuratieopties beschikbaar om de Azure Service Bus resource aan te passen. Zie Azure.Provisioning.ServiceBusvoor meer informatie. Voor meer informatie, zie Azure.Aanpassing van voorzieningen.
Verbinding maken met een bestaande Azure Service Bus-naamruimte
Mogelijk hebt u een bestaande Azure Service Bus naamruimte waarmee u verbinding wilt maken. In plaats van een nieuwe Azure Service Bus resource weer te geven, kunt u een verbindingsreeks toevoegen aan de app-host. Als u een verbinding wilt toevoegen aan een bestaande Azure Service Bus-naamruimte, roept u de methode AddConnectionString aan:
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddConnectionString("messaging");
builder.AddProject<Projects.WebApplication>("web")
.WithReference(serviceBus);
// After adding all resources, run the app...
Notitie
Verbindingsreeksen worden gebruikt om een breed scala aan verbindingsgegevens weer te geven, waaronder databaseverbindingen, berichtbrokers, eindpunt-URI's en andere services. In .NET.NET Aspire nomenclatuur wordt de term "verbindingsreeks" gebruikt om alle soorten verbindingsgegevens weer te geven.
De verbindingsreeks is geconfigureerd in de configuratie van de app-host, meestal onder gebruikersgeheimen, onder de sectie ConnectionStrings
. De app-host injecteert deze verbindingsreeks als een omgevingsvariabele in alle afhankelijke resources, bijvoorbeeld:
{
"ConnectionStrings": {
"messaging": "Endpoint=sb://{namespace}.servicebus.windows.net/;SharedAccessKeyName={key_name};SharedAccessKey={key_value};"
}
}
De afhankelijke resource heeft toegang tot de geïnjecteerde verbindingsreeks door de methode GetConnectionString aan te roepen en de verbindingsnaam door te geven als de parameter, in dit geval "messaging"
. De GetConnectionString
-API is een afkorting voor IConfiguration.GetSection("ConnectionStrings")[name]
.
Azure Service Bus wachtrij toevoegen
Als u een Azure Service Bus wachtrij wilt toevoegen, roept u de methode AddServiceBusQueue aan op de IResourceBuilder<AzureServiceBusResource>
:
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging");
serviceBus.AddServiceBusQueue("queue");
// After adding all resources, run the app...
Wanneer u AddServiceBusQueue(IResourceBuilder<AzureServiceBusResource>, String, String)aanroept, worden uw Service Bus-resources geconfigureerd voor een wachtrij met de naam queue
. De wachtrij wordt gemaakt in de Service Bus-naamruimte die wordt vertegenwoordigd door de AzureServiceBusResource
die u eerder hebt toegevoegd. Zie Wachtrijen, onderwerpen en abonnementen in Azure Service Busvoor meer informatie.
Azure Service Bus onderwerp en abonnement toevoegen
Als u een Azure Service Bus onderwerp wilt toevoegen, roept u de methode AddServiceBusTopic aan op de IResourceBuilder<AzureServiceBusResource>
:
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging");
serviceBus.AddServiceBusTopic("topic");
// After adding all resources, run the app...
Wanneer u AddServiceBusTopic(IResourceBuilder<AzureServiceBusResource>, String, String)aanroept, worden uw Service Bus-resources geconfigureerd voor een onderwerp met de naam topic
. Het onderwerp wordt gemaakt in de Service Bus-naamruimte die wordt vertegenwoordigd door de AzureServiceBusResource
die u eerder hebt toegevoegd.
Als u een abonnement voor het onderwerp wilt toevoegen, roept u de AddServiceBusSubscription methode aan op de IResourceBuilder<AzureServiceBusTopicResource>
en configureert u dit met behulp van de methode WithProperties:
using Aspire.Hosting.Azure;
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging");
var topic = serviceBus.AddServiceBusTopic("topic");
topic.AddServiceBusSubscription("sub1")
.WithProperties(subscription =>
{
subscription.MaxDeliveryCount = 10;
subscription.Rules.Add(
new AzureServiceBusRule("app-prop-filter-1")
{
CorrelationFilter = new()
{
ContentType = "application/text",
CorrelationId = "id1",
Subject = "subject1",
MessageId = "msgid1",
ReplyTo = "someQueue",
ReplyToSessionId = "sessionId",
SessionId = "session1",
SendTo = "xyz"
}
});
});
// After adding all resources, run the app...
De voorgaande code voegt niet alleen een onderwerp toe en maakt en configureert een abonnement met de naam sub1
voor het onderwerp. Het abonnement heeft een maximum aantal leveringen van 10
en een regel met de naam app-prop-filter-1
. De regel is een correlatiefilter waarmee berichten worden gefilterd op basis van de eigenschappen ContentType
, CorrelationId
, Subject
, MessageId
, ReplyTo
, ReplyToSessionId
, SessionId
en SendTo
.
Zie Wachtrijen, onderwerpen en abonnementen in Azure Service Busvoor meer informatie.
Resource voor Azure Service Bus emulator toevoegen
Als u een Azure Service Bus emulatorresource wilt toevoegen, koppelt u een aanroep op een <IResourceBuilder<AzureServiceBusResource>>
aan de RunAsEmulator-API:
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging")
.RunAsEmulator();
// After adding all resources, run the app...
Wanneer u RunAsEmulator
aanroept, worden uw Service Bus-resources geconfigureerd om lokaal te worden uitgevoerd met behulp van een emulator. De emulator is in dit geval de Azure Service Bus Emulator-. De Azure Service Bus Emulator biedt een gratis lokale omgeving voor het testen van uw Azure Service Bus-apps en het is een perfecte aanvulling op de .NET AspireAzure hostingintegratie. De emulator is niet geïnstalleerd, maar is toegankelijk voor .NET.NET Aspire als container. Wanneer u een container toevoegt aan de app-host, zoals wordt weergegeven in het vorige voorbeeld met de mcr.microsoft.com/azure-messaging/servicebus-emulator
-containerimage (en de bijhorende mcr.microsoft.com/azure-sql-edge
-containerimage), wordt de container gemaakt en gestart zodra de app-host start. Zie levenscyclus van containerresourcesvoor meer informatie.
Service Bus-emulatorcontainer configureren
Er zijn verschillende configuraties beschikbaar voor containerbronnen, bijvoorbeeld: u kunt de poorten van de container configureren of een wholistische JSON configuratie instellen die alles overschrijft.
Containerhostpoort voor Service Bus-emulator configureren
De Service Bus Emulator-container wordt standaard weergegeven wanneer deze is geconfigureerd door .NET.NET Aspire. De volgende eindpunten worden weergegeven:
Eindpunt | Afbeelding | Containerpoort | Host-poort |
---|---|---|---|
emulator |
mcr.microsoft.com/azure-messaging/servicebus-emulator |
5672 | dynamisch |
tcp |
mcr.microsoft.com/azure-sql-edge |
1433 | dynamisch |
De poort waarop wordt geluisterd, is standaard dynamisch. Wanneer de container wordt gestart, wordt de poort toegewezen aan een willekeurige poort op de hostcomputer. Als u de eindpuntpoort wilt configureren, koppel de aanroepen met behulp van de containerresourcebouwer die wordt geleverd door de RunAsEmulator
methode en vervolgens de WithHostPort(IResourceBuilder<AzureServiceBusEmulatorResource>, Nullable<Int32>), zoals in het volgende voorbeeld wordt weergegeven.
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging").RunAsEmulator(
emulator =>
{
emulator.WithHostPort(7777);
});
// After adding all resources, run the app...
Met de voorgaande code wordt het bestaande emulator
-eindpunt van de Service Bus-emulatorcontainer geconfigureerd om te luisteren op poort 7777
. De poort van de Service Bus-emulatorcontainer is toegewezen aan de hostpoort, zoals wordt weergegeven in de volgende tabel:
Eindpuntnaam | Poorttoewijzing (container:host ) |
---|---|
emulator |
5672:7777 |
Configureer de configuratie van de Service Bus-emulatorcontainer JSON
De Service Bus-emulator genereert automatisch een configuratie die vergelijkbaar is met dit config.json-bestand van de geconfigureerde resources. U kunt dit gegenereerde bestand volledig overschrijven of de JSON configuratie bijwerken met een JsonNode weergave van de configuratie.
Als u een aangepast JSON-configuratiebestand wilt opgeven, roept u de methode WithConfigurationFile(IResourceBuilder<AzureServiceBusEmulatorResource>, String) aan:
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging").RunAsEmulator(
emulator =>
{
emulator.WithConfigurationFile(
path: "./messaging/custom-config.json");
});
Met de voorgaande code wordt de Service Bus Emulator-container geconfigureerd voor het gebruik van een aangepast JSON configuratiebestand dat zich in ./messaging/custom-config.json
bevindt. Als u in plaats daarvan specifieke eigenschappen in de standaardconfiguratie wilt overschrijven, roept u de methode WithConfiguration(IResourceBuilder<AzureServiceBusEmulatorResource>, Action<JsonNode>) aan:
var builder = DistributedApplication.CreateBuilder(args);
var serviceBus = builder.AddAzureServiceBus("messaging").RunAsEmulator(
emulator =>
{
emulator.WithConfiguration(
(JsonNode configuration) =>
{
var userConfig = configuration["UserConfig"];
var ns = userConfig["Namespaces"][0];
var firstQueue = ns["Queues"][0];
var properties = firstQueue["Properties"];
properties["MaxDeliveryCount"] = 5;
properties["RequiresDuplicateDetection"] = true;
properties["DefaultMessageTimeToLive"] = "PT2H";
});
});
// After adding all resources, run the app...
Met de voorgaande code wordt het UserConfig
knooppunt opgehaald uit de standaardconfiguratie. Vervolgens worden de eigenschappen van de eerste wachtrij bijgewerkt om de MaxDeliveryCount
in te stellen op 5
, RequiresDuplicateDetection
op true
en DefaultMessageTimeToLive
op 2 hours
.
Gezondheidscontroles van hostingintegratie
De Azure Service Bus hostingintegratie voegt automatisch een statuscontrole toe voor de Service Bus-resource. De statuscontrole controleert of de Service Bus actief is en of er een verbinding tot stand kan worden gebracht.
De hostingintegratie is afhankelijk van het 📦 AspNetCore.HealthChecks.AzureServiceBus NuGet-pakket.
Client integratie
Installeer het NuGet-pakket Aspire in het project waarin de client wordt gebruikt om aan de slag te gaan met de Azure-clientintegratie, dat wil zeggen het project voor de toepassing die gebruikmaakt van de Service Bus-client. De Service Bus-clientintegratie registreert een ServiceBusClient exemplaar dat u kunt gebruiken om te communiceren met Service Bus.
dotnet add package Aspire.Azure.Messaging.ServiceBus
Service Bus-client toevoegen
Roep in het Program.cs bestand van het clientgebruikte project de AddAzureServiceBusClient-extensiemethode aan op een IHostApplicationBuilder om een ServiceBusClient te registreren voor gebruik via de container voor afhankelijkheidsinjectie. De methode gebruikt een verbindingsnaamparameter.
builder.AddAzureServiceBusClient(connectionName: "messaging");
Hint
De parameter connectionName
moet overeenkomen met de naam die wordt gebruikt bij het toevoegen van de Service Bus-resource in het app-hostproject. Met andere woorden, wanneer u AddAzureServiceBus
aanroept en een naam opgeeft van messaging
diezelfde naam moet worden gebruikt bij het aanroepen van AddAzureServiceBusClient
. Zie Azure Service Bus bron toevoegenvoor meer informatie.
Vervolgens kunt u het ServiceBusClient exemplaar ophalen met behulp van afhankelijkheidsinjectie. Als u bijvoorbeeld de verbinding wilt ophalen uit een voorbeeldservice:
public class ExampleService(ServiceBusClient client)
{
// Use client...
}
Voor meer informatie over afhankelijkheidsinjectie, zie .NET.
Client voor Service Bus met sleutel toevoegen
Er kunnen situaties zijn waarin u meerdere ServiceBusClient
exemplaren met verschillende verbindingsnamen wilt registreren. Om keyed Service Bus-clients te registreren, gebruikt u de AddKeyedAzureServiceBusClient-methode:
builder.AddKeyedAzureServiceBusClient(name: "mainBus");
builder.AddKeyedAzureServiceBusClient(name: "loggingBus");
Belangrijk
Wanneer u sleutelservices gebruikt, wordt verwacht dat uw Service Bus-resource twee benoemde bussen heeft geconfigureerd, één voor de mainBus
en één voor de loggingBus
.
Vervolgens kunt u de ServiceBusClient
instanties ophalen via afhankelijkheidsinjectie. Als u bijvoorbeeld de verbinding wilt ophalen uit een voorbeeldservice:
public class ExampleService(
[FromKeyedServices("mainBus")] ServiceBusClient mainBusClient,
[FromKeyedServices("loggingBus")] ServiceBusClient loggingBusClient)
{
// Use clients...
}
Voor meer informatie over gesleutelde services, zie .NET afhankelijkheidsinjectie: Keyed Services.
Configuratie
De .NET AspireAzure Service Bus-integratie biedt meerdere opties voor het configureren van de verbinding op basis van de vereisten en conventies van uw project.
Een verbindingsreeks gebruiken
Wanneer u een verbindingsreeks uit de sectie ConnectionStrings
configuratie gebruikt, kunt u de naam van de verbindingsreeks opgeven bij het aanroepen van de AddAzureServiceBusClient methode:
builder.AddAzureServiceBusClient("messaging");
Vervolgens wordt de verbindingsreeks opgehaald uit de ConnectionStrings
configuratiesectie:
{
"ConnectionStrings": {
"messaging": "Endpoint=sb://{namespace}.servicebus.windows.net/;SharedAccessKeyName={keyName};SharedAccessKey={key};"
}
}
Zie de connectionString-documentatie voor meer informatie over het opmaken van deze verbindingsreeks.
Configuratieproviders gebruiken
De .NET AspireAzure Service Bus-integratie ondersteunt Microsoft.Extensions.Configuration. Het laadt de AzureMessagingServiceBusSettings vanuit de configuratie met behulp van de Aspire:Azure:Messaging:ServiceBus
-key. Het volgende codefragment is een voorbeeld van een appsettings.json-bestand waarmee een aantal van de opties wordt geconfigureerd:
{
"Aspire": {
"Azure": {
"Messaging": {
"ServiceBus": {
"ConnectionString": "Endpoint=sb://{namespace}.servicebus.windows.net/;SharedAccessKeyName={keyName};SharedAccessKey={key};",
"DisableTracing": false
}
}
}
}
}
Voor het volledige Service Bus-clientintegratieschema JSON, zie Aspire.Azure. Messaging.ServiceBus/ConfigurationSchema.json.
Inline gedelegeerden gebruiken
U kunt ook de Action<AzureMessagingServiceBusSettings> configureSettings
delegate doorgeven om enkele of alle opties inline in te stellen, bijvoorbeeld om tracering vanuit de code uit te schakelen.
builder.AddAzureServiceBusClient(
"messaging",
static settings => settings.DisableTracing = true);
U kunt de Azure.Messaging.ServiceBus.ServiceBusClientOptions ook instellen met behulp van de optionele parameter Action<ServiceBusClientOptions> configureClientOptions
van de methode AddAzureServiceBusClient
. Als u bijvoorbeeld het achtervoegsel van de ServiceBusClientOptions.Identifier user-agent header wilt instellen voor alle verzoeken die door deze client worden gedaan:
builder.AddAzureServiceBusClient(
"messaging",
configureClientOptions:
clientOptions => clientOptions.Identifier = "myapp");
Gezondheidscontroles voor Client-integratie
Standaard stellen .NET.NET Aspire integraties gezondheidscontroles voor alle services in. Zie .NET.NET Aspire overzicht van integratiesvoor meer informatie.
De .NET AspireAzure Service Bus-integratie:
- Hiermee wordt de statuscontrole toegevoegd wanneer AzureMessagingServiceBusSettings.DisableTracing
false
is, waarbij geprobeerd wordt verbinding te maken met de Service Bus. - Integreert met het
/health
HTTP-eindpunt, dat specificeert dat alle geregistreerde gezondheidscontroles moeten slagen voordat de app als gereed wordt beschouwd om verkeer te accepteren.
Waarneembaarheid en telemetrie
.NET .NET Aspire integraties automatisch configuraties voor logboekregistratie, tracering en metrische gegevens instellen, die ook wel bekend staan als de pijlers van waarneembaarheid. Zie .NET.NET Aspire overzicht van integratieintegratiesvoor meer informatie over de waarneembaarheid en telemetrie van integraties. Afhankelijk van de back-upservice ondersteunen sommige integraties mogelijk slechts enkele van deze functies. Sommige integraties ondersteunen bijvoorbeeld logboekregistratie en tracering, maar geen metrische gegevens. Telemetriefuncties kunnen ook worden uitgeschakeld met behulp van de technieken die worden weergegeven in de sectie Configuratie.
Loggen
De .NET AspireAzure Service Bus-integratie maakt gebruik van de volgende logboekcategorieën:
Azure.Core
Azure.Identity
Azure-Messaging-ServiceBus
Naast het ophalen van Azure Service Bus aanvraagdiagnose voor mislukte aanvragen, kunt u latentiedrempels configureren om te bepalen welke geslaagde Azure Service Bus aanvraagdiagnose wordt geregistreerd. De standaardwaarden zijn 100 ms voor puntbewerkingen en 500 ms voor niet-puntbewerkingen.
builder.AddAzureServiceBusClient(
"messaging",
configureClientOptions:
clientOptions => {
clientOptions.ServiceBusClientTelemetryOptions = new()
{
ServiceBusThresholdOptions = new()
{
PointOperationLatencyThreshold = TimeSpan.FromMilliseconds(50),
NonPointOperationLatencyThreshold = TimeSpan.FromMilliseconds(300)
}
};
});
Tracing
De .NET AspireAzure Service Bus-integratie verzendt de volgende traceringsactiviteiten met behulp van OpenTelemetry:
Message
ServiceBusSender.Send
ServiceBusSender.Schedule
ServiceBusSender.Cancel
ServiceBusReceiver.Receive
ServiceBusReceiver.ReceiveDeferred
ServiceBusReceiver.Peek
ServiceBusReceiver.Abandon
ServiceBusReceiver.Complete
ServiceBusReceiver.DeadLetter
ServiceBusReceiver.Defer
ServiceBusReceiver.RenewMessageLock
ServiceBusSessionReceiver.RenewSessionLock
ServiceBusSessionReceiver.GetSessionState
ServiceBusSessionReceiver.SetSessionState
ServiceBusProcessor.ProcessMessage
ServiceBusSessionProcessor.ProcessSessionMessage
ServiceBusRuleManager.CreateRule
ServiceBusRuleManager.DeleteRule
ServiceBusRuleManager.GetRules
Azure Service Bus tracering is momenteel in de previewfase, dus moet u de experimentele switch instellen zodat traceringen worden uitgezonden.
AppContext.SetSwitch("Azure.Experimental.EnableActivitySource", true);
Zie Azure Service Bus: Gedistribueerde tracering en correlatie via Service Bus-berichtenvoor meer informatie.
Statistieken
De .NET AspireAzure Service Bus-integratie biedt momenteel geen ondersteuning voor metrische gegevens vanwege beperkingen met de Azure SDK.
Zie ook
- Azure Service Bus
- overzicht van .NET.NET Aspire integraties
- overzicht van .NET AspireAzure integraties
- .NET Aspire GitHub repo