Mencoba mengumpulkan berbagai praktik terbaik untuk menggunakan wawasan aplikasi. Dimulai dengan ASP .NET MVC dan proyek API Web dan termasuk berbagai saran yang dikumpulkan dari komunitas dan tim Application Insights.
Termasuk wawasan aplikasi dalam proyek API .NET Web API adalah tugas yang cukup mudah dan dengan Visual Studio 2015 dan seterusnya semudah mencetak kotak centang di templat proyek baru, atau melalui menu dropdown di setiap proyek web. Anda juga dapat menambahkannya dengan menambahkan paket Microsoft.ApplicationInsights.web Nuget bersama dengan 6 dependensi lainnya. Wawasan Aplikasi juga akan membantu Anda melacak kemajuan onboarding Anda melalui Ekstensi Wawasan Aplikasi yang merupakan bagian dari VS15 dan VS17. Namun mungkin masih ada pekerjaan yang diperlukan untuk memaksimalkan pengalaman AI Anda.
Salah satu fitur penting dalam wawasan aplikasi adalah melihat semua telemetri untuk operasi yang sama yang pada dasarnya berarti bahwa untuk tindakan API Web, setiap peristiwa kustom, ketergantungan, pengecualian, jejak semua harus dihubungkan dengan permintaan tersebut. Sayangnya ini tidak cukup berfungsi untuk beberapa skenario async. Setelah sedikit pengujian, saya telah mengamati korelasi gagal dalam dua skenario:
Panggilan ketergantungan asychronous apa pun (httpclient, panggilan SQL, dll)
await ( new HttpClient ( ) ) . GetAsync ( "http://www.github.com" ) ;Setiap telemetri dicatat pada utas latar belakang (termasuk acara khusus, pengecualian dll)
Task . Run ( async ( ) =>
{
telemetryClient . TrackEvent ( "SampleCustomEventOnBackgroundThread" ) ;
telemetryClient . TrackException ( new System . InvalidOperationException ( "Background Thread Exception" ) ) ;
} ) ;