Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Dayanıklı Görev SDK'larıyla ilgili sorunları tanılama seçenekleriniz Azure Container Apps, Azure Kubernetes Service kümesi veya Azure App Service uygulaması gibi kullandığınız Azure hesaplamaya bağlıdır. Düzenleme durumu ve hatalarıyla ilgili tam görünürlük elde etmek için hem Application Insights'ı hem de Dayanıklı Görev Zamanlayıcı izleme panosunu etkinleştirmenizi öneririz.
Uygulama Öngörüleri
Application Insights , Dayanıklı Görev SDK'larında çalışan uygulamalarınızı izlemenin önerilen yoludur. Azure portalında Application Insights Analytics aracını kullanarak bu izleme olaylarını bulabilir ve sorgulayabilirsiniz.
Bir düzenleme örneğinin her yaşam döngüsü olayı, Application Insights'taki izleme koleksiyonuna bir izleme olayı yazar. Belirli orkestrasyonları filtrelemek ve sorgulamak için bu olaylardaki özel boyutları (örneğin prop__instanceId, prop__name ve prop__runtimeStatus gibi) kullanın.
| Bilgi İşlem Hizmeti | Tanılama günlüğü yönergeleri |
|---|---|
| Azure Konteyner Uygulamaları | Azure Container Apps'te Log Analytics ile günlükleri izleyin |
| Azure App Service | Azure App Service'te uygulamalar için tanılama günlüğünü etkinleştir |
| Azure Kubernetes Service | Azure Kubernetes Service'i izleme |
Örnek sorgular
Application Insights etkinleştirildikten sonra düzenleme davranışını araştırmak için Günlükler'deki şu KQL sorgularını kullanın:
Başarısız düzenlemeleri bulma:
traces
| where customDimensions.prop__runtimeStatus == "Failed"
| project timestamp, customDimensions.prop__instanceId, customDimensions.prop__name, message
| order by timestamp desc
| take 50
Orkestrasyon süresi ada göre (son 24 saat):
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)
OpenTelemetry ile dağıtılmış izleme
Dayanıklı Görev SDK'ları OpenTelemetry dağıtılmış izlemeyi destekler ve bu sayede düzenleme, etkinlik ve alt düzenlemelerde bağıntılı aralıklar olarak uçtan uca görünürlük sağlar. İzlemeleri Application Insights, Jaeger veya Zipkin gibi OpenTelemetry uyumlu herhangi bir arka uca aktarabilirsiniz.
Desteklenen tüm dillerde kod örnekleri içeren kurulum yönergeleri için bkz. OpenTelemetry ve Dayanıklı Görev Zamanlayıcı ile dağıtılmış izleme.
Dayanıklı Görev Zamanlayıcı izleme panosu
Dayanıklı Görev Zamanlayıcı panosu düzenleme durumunu izlemenize, girişleri/çıkışları incelemenize, yürütme zaman çizelgelerini görüntülemenize ve düzenlemeleri yönetmenize (başlangıç, duraklatma, sürdürme, sonlandırma) olanak tanır. Hem yerel öykünücü hem de Azure tarafından barındırılan zamanlayıcılarla kullanılabilir.
Panoya erişme
-
Yerel öykünücü: Kimlik doğrulaması gerekmez. Panele
http://localhost:8082adresinden ulaşabilirsiniz. -
Azure barındırılan zamanlayıcı: Kimliğinize Dayanıklı Görev Verileri Katkıda Bulunanı rolünü atayın, ardından Azure portalında veya
https://dashboard.durabletask.io/üzerindeki görev hub'ının uç nokta URL'si aracılığıyla panoya erişin.
Tam kurulum ve kullanım yönergeleri için Dayanıklı Görev Zamanlayıcı panosunu kullanarak düzenlemeleri hata ayıklama ve yönetme başlığına bakın.
Yaygın sorunlar
| Semptom | Olası neden | Çözünürlük |
|---|---|---|
| Düzenleme "Çalışıyor" içinde takıldı | Etkinlik işlenmeyen bir özel durum oluşturdu ve yeniden deneme ilkesi yapılandırılmadı | Özel durum ayrıntıları için Application Insights'a bakın; yeniden deneme ilkesi ekleyin veya orchestrator'da try/catch kullanın |
| Etkinlik süresiz olarak yeniden denemeye devam ediyor | Yeniden deneme ilkesinin sınırı yok maxNumberOfAttempts |
Yeniden deneme ilkesi yapılandırmanızda en yüksek yeniden deneme sayısını ayarlama |
| Orchestrasyon başlatılmıyor | Çalışan doğru görev hub'ını yoklamıyor | bağlantı dizesi görev hub'ı adının zamanlayıcı kaynağıyla eşleştiğinden emin olun |
| Application Insights'ta iz yok | Bağlantı dizesi yapılandırılmadı veya SDK telemetri yaymıyor |
APPLICATIONINSIGHTS_CONNECTION_STRING'nin ayarlandığını doğrulayın; OpenTelemetry Microsoft.DurableTask kaynağının kayıtlı olduğundan emin olun |
| Dashboard, hiç orkestrasyon göstermiyor. | Rol ataması eksik veya yanlış görev hub'ı seçildi | Durable Task Data Contributor rolüne sahip olduğunuzu onaylayın; pano URL'sinde görev hub adını kontrol edin |
| Düzenleme tamamlandı ama sonuç boş | Geri döndürülen etkinlik null veya serileştirme başarısız oldu. |
Panonun geçmiş görünümünde etkinlik çıkışlarını inceleyin; serileştirici yapılandırmasını denetleyin |