Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Uw opties voor het diagnosticeren van problemen met de Durable Task SDK's zijn afhankelijk van de Azure rekenkracht die u gebruikt, zoals Azure Container Apps, een Azure Kubernetes Service-cluster of een Azure App Service-app. We raden u aan om zowel Application Insightsals het bewakingsdashboard van Durable Task Scheduler in te schakelen om volledig inzicht te krijgen in de orkestratiestatus en fouten.
Analyses van toepassingen
Application Insights is de aanbevolen manier om uw apps te bewaken die worden uitgevoerd op de Durable Task SDK's. U kunt deze traceringsgebeurtenissen vinden en er query's op uitvoeren met behulp van het hulpprogramma Application Insights Analytics in de Azure-portal.
Elke levenscyclus-gebeurtenis van een orchestration-exemplaar schrijft een traceringsevenement naar de traceringsverzameling in Application Insights. Gebruik de aangepaste dimensies voor deze gebeurtenissen (zoals prop__instanceId, prop__name en prop__runtimeStatus) om specifieke orkestraties te filteren en op te vragen.
| Compute-service | Instructies voor diagnostische logboekregistratie |
|---|---|
| Azure Container Apps - een dienst van Microsoft waarmee je containers kunt uitvoeren en beheren in de cloud. | Logboeken bewaken in Azure Container Apps met Log Analytics |
| Azure App Service | Diagnostische logboekregistratie inschakelen voor apps in Azure App Service |
| Azure Kubernetes Service | Azure Kubernetes Service monitoren |
Voorbeeldvragen
Zodra Application Insights is ingeschakeld, gebruikt u deze KQL-query's in logboeken om het indelingsgedrag te onderzoeken:
Mislukte orkestraties zoeken:
traces
| where customDimensions.prop__runtimeStatus == "Failed"
| project timestamp, customDimensions.prop__instanceId, customDimensions.prop__name, message
| order by timestamp desc
| take 50
Orkestratieduur per naam (afgelopen 24 uur):
traces
| where timestamp > ago(24h)
| where customDimensions.prop__runtimeStatus == "Completed"
| extend duration = todatetime(customDimensions.prop__completedTime) - todatetime(customDimensions.prop__createdTime)
| summarize avg(duration), max(duration), count() by tostring(customDimensions.prop__name)
Gedistribueerde tracering met OpenTelemetry
De Durable Task SDK's ondersteunen gedistribueerde tracering met OpenTelemetry, zodat u end-to-end zichtbaarheid hebt over orchestraties, activiteiten en suborchestraties als gecorreleerde spans. U kunt traceringen exporteren naar een back-end die compatibel is met OpenTelemetry, waaronder Application Insights, Jaeger of Zipkin.
Zie OpenTelemetry en gedistribueerde tracering met Durable Task Scheduler voor installatie-instructies met codevoorbeelden in alle ondersteunde talen.
Dashboard voor het monitoren van Durable Task Scheduler
Met het dashboard Durable Task Scheduler kunt u de indelingsstatus controleren, invoer/uitvoer controleren, uitvoeringstijdlijnen bekijken en indelingen beheren (starten, onderbreken, hervatten, beƫindigen). Deze is beschikbaar voor zowel de lokale emulator als Azure-gehoste planners.
Het dashboard openen
-
Lokale emulator: er is geen verificatie vereist. Het dashboard is beschikbaar op
http://localhost:8082. -
Azure-hosted scheduler: Wijs de rol Durable Task Data Contributor toe aan uw identiteit, open vervolgens het dashboard via de eindpunt-URL van de taakhub in de Azure-portal of op
https://dashboard.durabletask.io/.
Zie voor volledige installatie- en gebruiksinstructies Orchestrations debuggen en beheren met het Durable Task Scheduler-dashboard.
Veelvoorkomende problemen
| Symptoom | Mogelijke oorzaak | Resolutie / Besluit |
|---|---|---|
| Orchestratie vastgelopen in "Wordt uitgevoerd" | Activiteit heeft een niet-verwerkte uitzondering veroorzaakt en er is geen beleid voor opnieuw proberen geconfigureerd | Controleer Application Insights op uitzonderingsdetails; een beleid voor opnieuw proberen of try/catch toevoegen in de orchestrator |
| De activiteit blijft zich eindeloos herhalen | Beleid voor opnieuw proberen heeft geen maxNumberOfAttempts limiet |
Een maximumaantal nieuwe pogingen instellen in de beleidsconfiguratie voor opnieuw proberen |
| Orchestratie wordt niet gestart | Werker pollt niet de juiste taak hub | Controleer of de naam van de verbindingsreeks taakhub overeenkomt met de scheduler-resource |
| Geen traceringen in Application Insights | Verbindingsreeks niet geconfigureerd of SDK verzendt geen telemetrie | Controleer of APPLICATIONINSIGHTS_CONNECTION_STRING is ingesteld; zorg ervoor dat de OpenTelemetry-Microsoft.DurableTask-bron is geregistreerd |
| Dashboard toont geen orkestraties | Roltoewijzing ontbreekt of verkeerde taakhub geselecteerd | Bevestig dat u de rol Duurzame taakgegevensbijdrager hebt; controleer de naam van de taakhub in de dashboard-URL |
| Orchestratie voltooid, maar het resultaat is leeg | Activiteit gaf null terug of de serialisatie is mislukt |
Bekijk activiteitsuitvoer in de geschiedenisweergave van het dashboard; serializerconfiguratie controleren |