Dynamics 365 Data Export Service – Hatalı İşlemlerin Tespit Edilmesi
Bu yazı 17 Mayıs 2019 tarihinde Medium/@dynamics365 altında yayınlanmıştır. 19 Mayıs 2020 tarihinde emregulcan.com altında taşınmıştır.
İçerikler, yazının oluşturulduğu tarih için geçerli olup, Microsoft Dynamics 365 CE, Power Platform ve Azure hizmetlerinin sürekli iyileştirme ve güncelleme döngüsünden dolayı paylaşılan bilgilerde değişiklikler meydana gelmiş olabilir.
Merhaba,
Bu yazıda Dynamics 365 Data Export Service hizmetinde Dynamics 365 CE (CRM) Online ile Azure SQL Database senkronizasyonu sırasında meydana gelen hataların ve hatalı kayıtların incelenmesini anlatacağım.
Azure Storage Explorer Download
Öncelikli olarak Azure Storage Explorer uygulamasını indirmemiz gerekli, bunun için http://storageexplorer.com adresinden, kullanmış olduğunuz işletim sistemine göre ilgili dosyayı indirebilirsiniz.
Uygulamayı çalıştırdığınızda sol menüden Microsoft hesaplarınızı ekleyebilirsiniz. (Bu işlem opsiyoneldir)
Bu aşamadan sonra Azure Storage Explorer kullanıma hazır olacaktır.
Dynamics 365 CE Data Export Service Hatalı Kayıtların Listelenmesi
Dynamics 365 CE (CRM) ‘de senkronizasyon hatalarına erişmek için ana menüden Settings (Ayarlar)> Data Export (Veri Dışa Aktarma) adımlarını izleyerek tüm senkronizasyon profillerinin listelendiği Export Profiles sayfasına erişebilirsiniz.
Bu sayfada işlem yapmak istediğiniz profili seçerek detay sayfasına girebilirsiniz.
Detay sayfasında, senkronizasyon yapılan tüm Entity ‘lerin listesi bulunmaktadır. Bu listede Failed Notifications sütununda ilgili Entity için toplam hatalı kayıt işlem sayısını görebilirsiniz.
Üst menüde yer alan Failed Records ya da Download Failed Records (Preview) butonlarını kullanarak hatalı kayıtlara erişebilirsiniz.
İki butonun çalışma prensipleri farklı, eğer Failed Records butonu üzerinden işlem yaparsanız aşağıdaki gibi bir ekran ile karşılaşacaksınız.
Bu ekranda yer alan BLOB URL ‘i kullanarak, Azure Storage Explorer ile kayıtlara erişebilirsiniz. Önemli olan nokta bu BLOB URL sadece 24 saat için geçerli, daha sonra tekrar kullanmak isterseniz yine aynı şekilde yeni bir BLOB URL oluşturmanız gerekli.
Copy Blob URL butonu ile mevcut url bilgisini kopyalayabilirsiniz.
Eğer Download Failed Records (Preview) butonu ile işlem yaparsanız aşağıdaki gibi bir popup ekran çıkacak, bu listede istediğiniz kaydın yanında bulunan Download butonu ile dosyayı bilgisayarınıza indirebilirsiniz.
Hata Dosyalarını İnceleme
Eğer hata dosyalarını Download Failed Record (Preview) butonu ile bilgisayarınıza indirmişseniz, herhangi bir text editör ile (ben genelde notepad kullanıyorum) açıp inceleyebilirsiniz.
Diğer yöntem olan Failed Records butonunu kullandıysanız elde etmiş olduğumuz BLOB URL ‘i kullanarak Azure Storage Explorer üzerinden işlem yapmamız gerekli.
Bunun için Azure Storage Explorer ‘da Add Account butonu ile Connect to Azure Storage ekranına ulaşmamız gerekli.
Bu sayfada Use a shared access signature (SAS) URI seçeneğini işaretleyip devam edelim.
Açılan ekranda (Attach with SAS URI) URI input değeri olarak daha önce oluşturduğumuz BLOB URL bilgisini girmeliyiz.
Next ile bir sonraki ekrana geçtiğimizde mevcut bilgilerin özet görünümü çıkacaktır.
Bu ekranda Connect butonu ile bağlantı işlemini gerçekleştirebiliriz.
Bağlantı işlemi gerçekleştiğinde Azure Storage Explorer ana ekranı aşağıdaki gibi görünecektir.
Bu ekranda Explorer panelinde, mevcut tüm hesaplarımıza ulaşabiliriz.
data klasöründe hatalı kayıtların detayları yer almaktadır, data yapısına göre iç içe birden fazla klasör bulunur.
En son kırılıma ulaştığınızda ilgili dosyaya erişebilir ve isterseniz çift tıklayarak detaylarına ulaşabilirsiniz.
İsterseniz Download butonu ile bilgileri JSON
formatında data saklayan bir dosya olarak indirebilirsiniz.
failurelogs klasörü de data klasörü ile aynı şekilde birden fazla alt klasöre sahip olabilir. Bu klasörler aracılığıyla istediğiniz tarihe ait hata loglarını inceleyebilirsiniz.
En son ulaştığınız hata dosyasına çift tıklayarak dosyayı açabilirsiniz. Bu durumda aşağıdaki gibi bir uyarı ekranı çıkacaktır, Yes butonu ile onaylayabilirsiniz.
Dosyayı indirdikten sonra hangi uygulama ile açmak istediğinizi soran bir ekran çıkacaktır. Ben genelde notepad kullanıyorum, siz istediğiniz bir text editör kullanabilirsiniz.
Dosyayı açtığınızda aşağıdaki gibi hata mesajları göreceksiniz.
Bu hata mesajında;
- Entity; hata alınan Entity (Varlık)
- RecordId; ilgili kaydın Dynamics 365 CE (CRM) Id bilgisi (GUID)
- NotificationTime; hatanın oluştuğu zaman dilimi
- ChangeType; işlem bilgisi
- FailureReason; hata nedeni
bilgilerini içermektedir. En önemlisi FailureReason, bize hatanın nedenini ve nerede oluştuğunu göstermekte.
Yukarıdaki örnekte, FailureReason ‘da belirtilen alan (ColumnName) için izin verilenden daha fazla uzunlukta bir data gönderilmiş ve bundan kaynaklı olarak hata alınmış.
Tüm hata mesajlarını inceleyip, kaynak sistem (Dynamics 365 CE (CRM) Online) ve hedef sistem (Azure SQL Database) üzerinde gerekli düzenlemeleri tespit etmeli ve yapmalısınız.
Eğer Export Profile oluşturup senkronizasyonu başlattıktan sonra Dynamics 365 CE (CRM) ‘de ilgili Entity üzerinde herhangi bir değişiklik yapıldıysa Azure SQL Database ‘de ve Export Profile ‘da ilgili Entity ‘nin silinip yeniden eklenmesi gerekebilir.
Bu işlem için Dynamics 365 Data Export Service başlıklı yazıda anlattığım işlemleri yapmanız gerekmekte, yazıya buradan ulaşabilirsiniz.
Gerekli tüm kontrolleri ve düzenlemeleri yaptıktan sonra hatalı kayıtların yeniden gönderilmesini isterseniz Export Profile detay sayfasında üst menüde bulunan ReSync Failed Records (Preview) butonunu kullanarak yeniden gönderim işlemini başlatabilirsiniz.
İşlemin başlatıldığına dair bilgilendirme mesajını OK butonunu kullanarak kapatabilirsiniz.
Bu aşamadan sonra Dynamics 365 CE (CRM) Online Data Export Service hatalı kayıtları yeniden gönderim için planlayacaktır.
Eğer Data Export Service ile ilgili olarak çözümleyemediğiniz ya da gerekli çalışmaları yapmanıza rağmen devam eden hatalar olursa Microsoft ‘a destek talebi açabilirsiniz.
Umarım faydalı bir yazı olmuştur.