Application Insights kullanarak sistem tarafından oluşturulan günlükleri analiz etme
Tuval uygulamanızı, bir Azure İzleyici özelliği olan Application Insights'a bağlayabilirsiniz. Application Insights, sorunları tanılamanıza ve kullanıcıların uygulamalarınızda gerçekten ne yaptığını anlamanıza yardımcı olan güçlü analiz araçları içerir. Daha iyi kararlar almanıza ve uygulamalarınızın kalitesine geliştirmenize yardımcı olan bilgiler toplayabilirsiniz.
Bu hızlı başlangıç sırasında, tuval uygulamalarında sistem tarafından oluşturulan günlüklerin kavramlarını keşfetmek ve bunları uygulamalarınıza uygulamak için Kudos olarak adlandırılan bir tuval uygulaması kullanıyoruz. Örnek Kudos uygulaması bir çalışan etkileşimi uygulamaları paketinin parçasıdır ve Employee Experience Starter Kit bölümünden indirilebilir.
Önkoşullar
- Azure portalına erişiminiz olması gerekir.
- Azure kaynakları oluşturmak için izinlere sahip olmanız gerekir.
Not
Telemetri bilgilerini görüntülemek için kiracı yöneticinizin Tuval uygulama içgörülerini etkinleştirmesi gerekir. Power Platform yönetim merkezinde yönetici olarak oturum açın. Ayarlar > Kiracı ayarları > Tuval uygulaması içgörüleri öğelerine gidin. Tuval uygulaması içgörüleri bölmesinde geçiş seçeneğini Açık olarak ayarlayın ve değişikliklerinizi kaydedin. Daha fazla bilgi için bkz. Kiracı ayarları.
İsteğe bağlı
- Kudos uygulamasını Employee Experience Starter Kit'ten indirip yükleyin. Ayrıca, varolan uygulama da kullanabilirsiniz.
Application Insights kaynağı oluştur
Bir uygulamadan sistem tarafından oluşturulan günlükler gönderebilmek için olayları depolamak üzere bir Application Insights kaynağı oluşturmanız gerekir.
Azure portalında oturum açın.
Application Insights arayın:
Application Insights kaynağı oluşturun:
Uygun değerleri girin ve gözden geçir + oluştur seçeneğini belirleyin.
Daha fazla bilgi için, oku Application Insights kaynak oluştur'u okuyun.
Application Insights kurulumu oluşturulduktan sonra, sonraki bir adımda kullanmak için kurulum genel bakışındaki İzleme anahtarını kopyalayın.
Uygulamanızı Application Insights'a bağlayın
Not
- İzleme anahtarı belirtirken verilerin kiracılar arasında gönderilebileceğini unutmayın. İzleme olayları, hedef App Insights kurulumu uygulamadan farklı bir kiracıda olsa bile uygulamanız için ayarladığınız izleme anahtarına karşılık gelen App Insights kaynağına gönderilir.
- App Insights için izleme anahtarları mevcut olabileceğinden mevcut .msapp dosyalarını içeri aktarırken dikkatli olun. Doğru App Insights izleme anahtarının kullanıldığını doğrulamak için içeri aktarma işleminden sonra uygulamayı el ile açın.
Power Apps'te oturum açın.
Sol gezinme bölmesinde Uygulamalar'ı seçin. Uygulama listesinden Kudos uygulamasını seçin ve sonra da Düzenle'yi seçin:
Not
Ayrıca yeni bir uygulama oluşturabilir veya mevcut uygulamayı düzenleyebilirsiniz.
Sol gezinti ağacında Uygulama nesnesini seçin ve İzleme Anahtarını yapıştırın:
Uygulamanızı kaydedin ve yayımlayın.
Yayımlanmış uygulamayı Oynatın ve farklı ekranlara göz atın.
Uygulama ekranlarında gezinirken, aşağıdakiler gibi kullanım ayrıntıları da dahil olmak üzere olaylar Application Insights'a otomatik olarak kaydedilir:
- Uygulamaya erişim konumu
- Kullanılan cihazlar
- Kullanılan tarayıcı türleri
Önemli
Olayları Application Insights'a göndermek için yayımlanmış uygulamayı yürütmeniz gerekir. Power Apps Studio uygulamasında uygulamanın önizlemesini görüntülediğinizde olaylar Application Insights'a gönderilmez.
Application Insights'ta olayları görüntüle
Azure portalında oturum açın ve önceden oluşturduğunuz Application Insights kaynağı açın.
Sol gezinti bölmesinde aşağı kaydırın ve kullanım bölümü altındaki kullanıcıları seçin.
Not
Kullanıcılar görünümü uygulamanın kullanım ayrıntılarını gösterir. Örneğin:
- Uygulamayı görüntüleyen kullanıcı sayısı
- Kullanıcı oturumu sayısı
- Kaydedilen olay sayısı
- Kullanıcıların işletim sistemleri ve tarayıcı sürümü ayrıntıları
- Kullanıcıların bölgesi ve konumu
Application Insights'taki kullanıcılar, oturumlar ve olay analizi hakkında daha fazla bilgi edinin.
Belirli Ayrıntılara gitmek için kullanıcı oturumlarından birini seçin. Oturum uzunluğu ve ziyaret edilen ekranlar gibi bilgileri görebilirsiniz:
Kullanım bölümü altından sol gezinti bölmesinde Olaylar'ı seçin. Tüm uygulama oturumlarında görüntülenen tüm ekranların bir özetini görebilirsiniz:
İpucu
Daha fazla Application Insights özelliği vardır. Örneğin:
Özel izleme olayları oluşturma
Senaryonuza özgü bilgileri çözümlemek için doğrudan Application Insights'e özel izlemeler yazabilir ve başlayabilirsiniz. İzleme işlevi aşağıdakileri toplamanızı sağlar:
- Ekranlardaki denetimler için ayrıntılı kullanım bilgileri
- Uygulamanıza erişen belirli kullanıcılar
- Oluşan hatalar
İzleme, kullanıcılarınız uygulamanızda gezinirken ve farklı eylemler gerçekleştirdikçe bilgilerin bir izini gönderebileceğiniz için sorunları tanılamanıza de yardımcı olabilir. Application Insights'a gönderilen izleme iletileri üç önem derecesine sahiptir:
- Bilgiler
- Uyarı
- Error
Senaryonuza bağlı olarak, uygun önem derecesiyle bir izleme iletisi göndermeyi tercih edebilirsiniz. Verileri sorgulayabilir ve önem derecesine göre belirli eylemler gerçekleştirebilirsiniz.
Not
Herhangi bir kişisel veri kaydı gerçekleştiriyorsanız, çeşitli gizlilik yasaları ve düzenlemelerinden kaynaklanan yükümlülükleri dikkate edin. Daha fazla bilgi için Microsoft Güven Merkezi ve Hizmet Güveni Portalına bakın.
Şimdi, her ekran için geri bildirim toplamak üzere uygulamanızda yeni bir bileşen oluşturun ve olayları Application Insights'a yazın.
Power Apps'te oturum açın.
Sol gezinme bölmesinde Uygulamalar'ı seçin. Uygulama listesinden Kudos uygulamasını seçin ve sonra da Düzenle'yi seçin.
Not
Yeni bir uygulama oluşturabilir veya mevcut bir uygulamayı düzenleyebilirsiniz.
Ağaç görünümünde bileşenler seçeneğini belirleyin :
Yeni bileşen'i seçin ve genişliği 200 ve yüksekliği 75 olarak yeniden boyutlandırın:
Menüden Ekle' i seçin ve Emoji-Kaş ve Emoji - Gülümseme eklemek için Simgeler'i seçin:
Özel özellik oluşturmak için Yeni özel özellik'i seçin :
Özellik adıve görünen ad, FeedbackSceen gibi girin.
Özellik Açıklaması girin.
Özellik türünü, giriş ve veri türünü ekran olarak seçin:
Not
Giriş özelliği, ekran adını ve bileşenin bileşenini yakalamanıza olanak sağlar; böylece bu bilgileri Application Insights'a günlüğe kaydedebilirsiniz.
Ağaç görünümünde bileşeni seçin, Daha fazla eylem (…) seçin ve sonra da bileşeni FeedbackComponent gibi anlamlı bir adla yeniden adlandırmak için Yeniden adlandır'ı seçin.
Simgeleri seçin, Daha fazla eylem (…) seçin ve sonra simgeleri, FrownIcon ve SmileIcon gibi anlamlı adlarla yeniden adlandırmak için Yeniden adlandır seçeneğini seçin.
FrownIcon simgesini seçin , OnSelect özelliğini seçin ve ardından formül çubuğuna aşağıdaki ifadeyi girin:
Trace( "App Feedback", TraceSeverity.Information, { UserName: User().FullName, UserEmail: User().Email, Screen: FeedbackComponent.FeedbackScreen.Name, FeedbackValue: "-1" } ); Notify("Thanks for your feedback!");
Not
Formül ifadesi olarak UserName, UserEmail, Screen ve Feedback (-1 değeriyle) Application Insights'a gönderilir.
SmileIcon simgesini seçin , OnSelect özelliğini seçin ve ardından formül çubuğuna aşağıdaki ifadeyi girin:
Trace( "App Feedback", TraceSeverity.Information, { UserName: User().FullName, UserEmail: User().Email, Screen: FeedbackComponent.FeedbackScreen.Name, FeebackValue: "1" } ); Notify("Thanks for your feedback!");
Bileşeni uygulamanızda ekranlardan birine ekleyin:
Uygulamanızı kaydedip yayımlamak için Kaydet'i ve ardından Yayımla'yı seçin.
Yayımlanmış uygulamayı yürütün ve ekranlarından bir gülümseme ve çatma görüşü gönderin.
Önemli
Olayları Application Insights'a göndermek için yayımlanmış uygulamayı yürütmeniz gerekir. Power Apps Studio uygulamasında uygulamanın önizlemesini görüntülediğinizde olaylar Application Insights'a gönderilmez.
Application Insights'da Verileri çözümleme
Artık Application Insights'ta uygulamanızdan izleme işlevini kullanarak gönderdiğiniz verileri çözümlemeye başlayabilirsiniz.
Azure portalında oturum açın ve önceden oluşturduğunuz Application Insights kaynağı açın:
Soldaki gezinti bölmesinde İzleme altından Kayıtlar'ı seçin:
Aşağıdaki sorguyu girin ve uygulamanızdan alınan geri bildirimi görüntülemek için Çalıştır'ı seçin:
traces | where message == "App Feedback" | order by timestamp
Sonuçlarda bir satır seçin ve customDimensions alanını genişletin.
Bileşeninizde gülümseme veya Kaş simgesi için OnSelect olayının Ekran, UserName, UserEmail ve FeedbackValue değerleri kaydedildi. Değerler Application Insights'a gönderilen appId, appName ve appSessionId gibi her olay için de kaydedilir.
Aşağıdaki sorgu sorgusu ile JSON özel boyutlarının özelliklerini genişletebilir ve sonuçlar görünümündeki sütunları proje olarak görüntüleyebilirsiniz.
traces | extend customdims = parse_json(customDimensions) | where message == "App Feedback" | project timestamp , message , AppName = customdims.['ms-appName'] , AppId = customdims.['ms-appId'] , FeedbackFrom = customdims.UserEmail , Screen = customdims.Screen , FeedbackValue = customdims.FeedbackValue | order by timestamp desc
İpucu
Günlük sorguları oldukça güçlüdür. Birden çok tabloya katılmak, büyük miktarlarda veri toplamak ve karmaşık işlemler gerçekleştirmek için bunları kullanabilirsiniz. Günlük sorguları hakkında daha fazla bilgi edinin.
İşlenmemiş hataları izleme (deneysel)
[Bu bölüm sürüm öncesi belgelerini içerir ve değiştirilebilir.]
Önemli
- Bu, deneysel bir özelliktir.
- Deneysel özellikler üretimde kullanım amacı taşımaz ve işlevleri sınırlıdır. Bu özellikler, müşterilerin erken erişim elde etmesi ve geri bildirim sağlaması amacıyla resmi sürümden önce kullanıma sunulur.
Uygulamanız çalışırken oluşabilecek tüm hataları her zaman önceden tahmin edemez ve bunlara karşı planlama yapamazsınız. İşlenmemiş Power Fx formülü hataları kullanıcılara başlık iletisi olarak bildirilir. Ayrıca, sorunları bildirmek için uygulama kullanıcılarına bağımlı olmadan sıklığını ve önemini anlamanıza yardımcı olmak için Application Insights'a da raporlanabilir. Ayrıca, çalışma zamanı hataları oluştuğunda daha etkin bir yaklaşım gerçekleştirmek için gerçek zamanlı uyarılar ayarlayabilirsiniz.
Application Insights'a hata aktarmayı etkinleştirme
Power Apps'in işlenmemiş çalışma zamanı hatalarını Azure Application Insights'a aktarmasına izin veren ayarı etkinleştirmeniz gerekir.
Uyarı
Bu ayarın etkinleştirilmesi, Application Insights günlüklerinin depolanmasıyla ilgili ek maliyetlere neden olabilir.
Hata aktarmayı etkinleştirmek için tuval uygulamanızı düzenleme için açık bırakarak Ayarlar > Yaklaşan özellikler > Deneysel > Hataları Azure Application Insights'a aktar'a gidin. Uygulamanızı kaydedin ve yayımlayın.
Application Insights'ta hata olayları
Kullanıcılar tarafından uygulama çalışma zamanında deneyimlenen işlenmemiş Power Fx hataları izlemeler tablosuna bildirilir. İşlenmemiş hatalar, "İşlenmemiş hata" olay iletisi tarafından tanımlanabilir ve diğer hata olaylarından ayırt edilebilir. Bu olayların "severityLevel" boyutu 3'tür (TraceSeverity.Error).
Ayrıntılı hata iletileri, customDimension özelliğinin "hatalar" boyutunda verilir. Aynı işlem sırasında birden çok hata oluştuğu durumlarda hatalar tek bir izleme olayının "hatalar" boyutunda birleştirilir. Hata iletileri, canlı bir hata ayıklama oturumu sırasında izleyici'de raporlananlarla aynıdır.
Aşağıdaki örnek sorgu işlenmemiş hataları tanımlar ve izleme olayında bulunan tüm hata iletilerini genişletir:
traces
| where message == "Unhandled error"
| extend customdims = parse_json(customDimensions)
| extend errors = parse_json(tostring(customdims.['errors']))
| mv-expand errors
| project timestamp
, itemId //unique identifier for the trace event
, AppName = customdims.['ms-appName']
, AppId = customdims.['ms-appId']
, errors = errors.['Message']
| order by timestamp desc
Bağıntı izleme (deneysel)
[Bu bölüm sürüm öncesi belgelerini içerir ve değiştirilebilir.]
Önemli
- Bu, deneysel bir özelliktir.
- Deneysel özellikler üretimde kullanım amacı taşımaz ve işlevleri sınırlıdır. Bu özellikler, müşterilerin erken erişim elde etmesi ve geri bildirim sağlaması amacıyla resmi sürümden önce kullanıma sunulur.
Dış verilere ve hizmetlere yönelik bağlantılar çoğu uygulama için temel öğedir. Bağıntı izleme, belirli sınırlamalara bağlı olarak, bir tuval uygulaması ve bağlantılarında sistem tarafından oluşturulan günlüklere katılmak için bağlam bilgilerini oluşturur ve yayar. Örneğin, uygulamanız bir Azure İşlevini veya başka REST API'yi çağıran özel bir bağlayıcıyı çağırabilir. Bağıntı izleme, uygulamada yapılan eylemlerin katmanlar arasında temelindeki API çağrılarıyla ilişkilendirilmesine olanak tanır. Bu, sorun giderme durumunda yararlı olabilir.
Tuval uygulaması bağıntı izlemesi, bağlam izleme uygulamasıdır ve W3C belirtimini izler.
Bağıntı izlemeyi etkinleştirme
Uyarı
Bu ayarın etkinleştirilmesi, Application Insights günlüklerinin depolanmasıyla ilgili ek maliyetlere neden olabilir.
Bağıntı izleme özelliğini etkinleştirmek için tuval uygulamanızı düzenleme için açık bırakarak Ayarlar > Yaklaşan özellikler > Deneysel > Azure Application Insights bağıntı izlemeyi etkinleştir'e gidin. Uygulamanızı kaydedin ve yayımlayın.
Sınırlamalar
- Bağıntı izleme yalnızca özel bağlayıcılar için kullanılabilir. Diğer bağlayıcı türleri desteklenmez.
- HTTP istekleri, Application Insights'ta yalnızca bağlı hizmetin Application Insights'a da bağlı olması durumunda yakalanır.
Bağıntı izlemeyi kullanma
Bağıntı izleme özelliği etkinleştirildiğinde, tuval uygulamasının Application Insights kurulumunun bağımlılıklar tablosuna sistem tarafından oluşturulan yeni bir günlük olayı ekler. Bu olay, bir ağ çağrısından yanıt alındığında kaydedilir. Bağımlılık olayları, istek ve yanıt başlıkları, yanıt durum kodu ve çağrı süresi dahil olmak üzere ağ çağrısının ayrıntılarını yakalar.
Bağlı hizmet aynı zamanda Application Insights'a da bağlıysa, hizmetin Application Insights kurulumunun istekler tablosunda isteği yakalayan ek bir sistem tarafından oluşturulmuş günlük olayı oluşturulur. Azure Işlevleri gibi bazı Azure hizmetleri, Azure portalından herhangi bir kodlama olmadan bağlanabilir. Aynı Application Insights kurulumuna tuval uygulamaları veya birden çok uygulama ve bağlı hizmet bağlanabilir.
Desteklenen bağlayıcılar için ağ çağrıları, "operation_Id" boyutundaki diğer sistem tarafından oluşturulan günlüklerle katılabilir. Aşağıdaki örnek sorgu, bir uygulama oturumu sırasında gerçekleşen izleme olayları yanında yapılan bir ağ aramasını gösterir.
traces | union dependencies | union requests | union pageViews | union customEvents
| project timestamp
, itemType
, name
, operation_Name
, message
, severityLevel
, customDimensions
, operation_Id
, operation_ParentId
| where operation_Id == "0a7729e3e83c4e4d93cb4f51149f73b9" //placeholder operation_Id, replace
| order by timestamp asc
Verileri Power BI'e dışa aktarma
Application Insights Veri ve sorgu sonuçlarınızı Power BI çözümleme ve veri sunusu için uygulamasına verebilirsiniz.
Azure portalında oturum açın ve önceden oluşturduğunuz Application Insights kaynağı açın:
Soldaki gezinti bölmesinde İzleme altından Kayıtlar'ı seçin:
Günlük analizi sorgu penceresinde, Dışarı aktar menüsünü seçin.
Power BI sorgu dosyasını indirmek için Power BI'ye aktar (M sorgusu) seçeneğini belirleyin:
İndirilen dosyayı bir metin düzenleyicide açın ve sorguyu panoya kopyalayın.
Power BI açın.
Giriş şeridinde Verileri Al menüsünü ve ardından Boş sorgu'yu seçin:
Sorgu penceresinde Gelişmiş Düzenleyici'yi seçin. Sorguyu pencereye yapıştırın, Bitti'yi ve ardından Kapat ve Uygula'yı seçin:
Uygulamanızda alınan geri bildirimleri temsil etmek için Power BI uygulamasında grafikler ve görsel öğeler oluşturabilir ve bunlara veri tabanlı kararlar ve eylemler yapabilirsiniz.
Varsayılan İzleme olayı bağlamı ve boyutları
Her izleme olayında customDimensions özelliğine de bir dizi varsayılan boyutlar eklenir. Bu boyutlar, uygulamasında olayların oluştuğu uygulama ve uygulama oturumlarını tanımlamak için kullanılabilir. Diğer özel verileri izleme işlevini kullanarak günlüğe kaydederseniz, bunlar da özel boyutlarda görüntülenir.
Boyut Adı | Temsil eder: |
---|---|
ms-appId | Olayı gönderen uygulamanın uygulama kimliği. |
ms-appname | Olayı gönderen uygulamanın uygulama adı. |
ms-appSessionId | Uygulama oturum kimliği. Bu değer bazı senaryolarda doldurulmayabilir. Kullanılabildiğinde bu değer standart Application Insights sessionID boyutunu geçersiz kılar. |
ms-tenantID | Uygulamanın yayımlandığı kiracının benzersiz tanıtıcısı. |
ms-environmentId | Uygulamanın yayımlandığı ortamın adı. |
userId | Oturumla ilişkili kullanıcının benzersiz tanımlayıcısı. |
ms-duration | Kullanıcının bir ekrandan diğerine gitmesi için geçen süreyi ölçen yaklaşık değer. Bu değer standart Application Insights PageView süresi boyutunu geçersiz kılar. |
sessionId | Tek bir uygulama oturumuyla ilişkilendirilmiş tüm olayları ilişkilendirmek için kullanılabilen bir oturum kimliği. Bu değer her zaman vardır ve benzersiz oturum sayısını anlamak için önerilir. Bu değer oynatıcının oturum kimliğinden alınır ve uygulama oynatılırken oturum ayrıntıları görüntülendiğinde gösterilir. Oturum kimliği bazen Application Insights tarafından oluşturulmuş varsayılan, rastgele ve benzersiz bir değer alabilir. Bu varsayılan değer güvenilir değildir ve uygulamaya özgü herhangi bir parametreyle bağıntılı olmaz. |
Süre | Kullanıcının bir ekrandan diğerine gitmesi için geçen süreyi ölçen yaklaşık değer. Bu değer, ms-duration boyutu tarafından bildirilen süreyle aynıdır. |
ms-isTest | Oturumun Test Studio test çalıştırıcısı ile ilişkili olup olmadığını gösterir. |
ms-currentScreenName | Kullanıcının geldiği sayfasının adı (sayfa gezinme olayları için vardır). |
ms-targetScreenName | Kullanıcının gittiği sayfasının adı (sayfa gezinme olayları için vardır). |
Desteklenmeyen senaryolar
Application Insights aşağıdaki senaryoları desteklemez.
- Çevrimdışı yürütücü olayları yakalanmaz.
- Uygulama askıda olduğunda mobil uygulama (iOS ve Android) olayları yakalanmaz.
- GCC ve ortak olmayan bulutlar desteklenmez.
Not
Belge dili tercihlerinizi bizimle paylaşabilir misiniz? Kısa bir ankete katılın. (lütfen bu anketin İngilizce olduğunu unutmayın)
Anket yaklaşık yedi dakika sürecektir. Kişisel veri toplanmaz (gizlilik bildirimi).