Pencarian transaksi adalah fitur Application Insights yang Anda gunakan untuk menemukan dan menjelajahi item telemetri individual, seperti tampilan halaman, pengecualian, atau permintaan web. Anda juga dapat melihat jejak log dan peristiwa yang Anda kodekan.
Untuk kueri data Anda yang lebih kompleks, gunakan Analitik Log.
Di mana Anda melihat Pencarian?
Anda dapat menemukan Pencarian di portal Microsoft Azure atau Visual Studio.
Di portal Microsoft Azure
Anda dapat membuka penelusuran transaksi dari tab Gambaran umum Application Insights pada aplikasi Anda. Anda juga dapat memilih Cari di bagian Selidiki di menu sebelah kiri.
Buka menu dropdown Jenis peristiwa untuk melihat daftar item telemetri seperti permintaan server, tampilan halaman, dan peristiwa kustom yang Anda kodekan. Bagian atas daftar Hasil memiliki bagan ringkasan yang memperlihatkan jumlah peristiwa dari waktu ke waktu.
Keluar dari menu dropdown atau pilih Refresh untuk mengetahui peristiwa baru.
Di Visual Studio
Di Visual Studio, terdapat jendela Pencarian Application Insights juga. Jendela ini paling berguna untuk menampilkan kejadian telemetri yang dihasilkan oleh aplikasi yang Anda telusuri kesalahannya. Tetapi juga dapat menampilkan kejadian yang dikumpulkan dari aplikasi anda yang dipublikasikan di portal Microsoft Azure.
Buka jendela Pencarian Application Insights di Visual Studio:
Jendela Pencarian Application Insights memiliki fitur yang mirip dengan portal web:
Tab Lacak Operasi tersedia saat Anda membuka permintaan atau tampilan halaman. "Operasi" adalah urutan peristiwa yang terkait dengan satu permintaan atau tampilan halaman. Misalnya, panggilan dependensi, pengecualian, log jejak, dan kejadian kustom mungkin merupakan bagian dari satu operasi. Tab Lacak Operasi memperlihatkan waktu dan durasi kejadian ini secara grafis sehubungan dengan permintaan atau tampilan halaman.
Memeriksa item individual
Pilih item telemetri apa pun untuk melihat bidang kunci dan item terkait.
Tampilan detail transaksi keseluruhan akan terbuka.
Filter jenis kejadian
Buka menu dropdown Jenis kejadian dan pilih jenis kejadian yang ingin Anda lihat. Jika Anda ingin memulihkan filter nanti, pilih Reset.
Jenis kejadian adalah:
- Pelacakan: Log diagnostik termasuk panggilan TrackTrace, log4Net, NLog, dan System.Diagnostic.Trace.
- Permintaan: Permintaan HTTP yang diterima oleh aplikasi server Anda termasuk halaman, skrip, gambar, file gaya, dan data. Kejadian ini digunakan untuk membuat bagan gambaran umum permintaan dan respons.
- Tampilan Halaman: Telemetri yang dikirim oleh klien web digunakan untuk membuat laporan tampilan halaman.
- Kejadian Kustom: Jika Anda memasukkan panggilan ke
TrackEvent()
untuk memantau penggunaan, Anda dapat menelusurinya di sini.
- Pengecualian: pengecualian yang tidak diambil di server, dan pengecualian yang Anda log menggunakan
TrackException()
.
- Dependensi: Panggilan dari aplikasi server Anda ke layanan lain seperti REST API atau database, dan panggilan AJAX dari kode klien Anda.
- Ketersediaan: Hasil pengujian ketersediaan
Filter pada nilai properti
Anda dapat memfilter kejadian berdasarkan nilai propertinya. Properti yang tersedia bergantung pada jenis peristiwa yang Anda pilih. Pilih Filter untuk memulai.
Tidak memilih nilai untuk properti tertentu memiliki efek yang sama dengan memilih semua nilai. Pilihan tersebut akan mematikan pemfilteran pada properti tersebut.
Perhatikan bahwa hitungan di sebelah kanan nilai filter memperlihatkan berapa banyak kemunculan yang ada di set yang difilter saat ini.
Menemukan kejadian dengan properti yang sama
Untuk menemukan semua item dengan nilai properti yang sama, masukkan di kotak Pencarian atau pilih kotak centang saat Anda melihat properti pada tab Filter.
Mencari data
Catatan
Untuk menulis kueri yang lebih kompleks, buka Log (Analitik) di bagian atas panel Penelusuran.
Anda dapat mencari istilah di salah satu nilai properti. Kemampuan ini berguna jika Anda menulis peristiwa kustom dengan nilai properti.
Anda mungkin ingin mengatur rentang waktu, karena pencarian dalam rentang yang lebih pendek akan lebih cepat.
Cari kata yang lengkap, bukan substring. Gunakan tanda kutip untuk mengapit karakter khusus.
String |
Tidak ditemukan |
Ditemukan |
HomeController.About |
home
controller
out |
homecontroller
about
"homecontroller.about" |
Amerika Serikat |
Uni
ted |
united
states
united AND states
"united states" |
Anda bisa menggunakan ekspresi pencarian berikut:
Kueri Sampel |
Efek |
apple |
Temukan semua peristiwa dalam rentang waktu yang bidangnya menyertakan kata apple . |
apple AND banana
apple banana |
Temukan kejadian yang berisi kedua kata tersebut. Gunakan modal AND , bukan and . Bentuk pendek. |
apple OR banana |
Temukan kejadian yang berisi salah satu kata. Gunakan OR , bukan or . |
apple NOT banana |
Temukan kejadian yang berisi satu kata tetapi tidak berisi kata yang lain. |
Pengambilan sampel
Jika aplikasi Anda menghasilkan telemetri yang signifikan dan menggunakan ASP.NET SDK versi 2.0.0-beta3 atau yang lebih baru, aplikasi tersebut secara otomatis mengurangi volume yang dikirim ke portal melalui pengambilan sampel adaptif. Modul ini hanya mengirimkan sebagian kecil peristiwa yang representatif. Ini memilih atau membatalkan pilihan peristiwa yang terkait dengan permintaan yang sama dengan grup, memungkinkan Anda menavigasi di antara peristiwa terkait.
Pelajari tentang pengambilan sampel.
Buat item kerja
Anda dapat membuat bug di GitHub atau Azure DevOps dengan detail dari item telemetri apa pun.
Buka tampilan detail transaksi keseluruhan dengan memilih item telemetri apa pun. Lalu pilih Buat item kerja.
Pertama kali Anda melakukan hal ini, Anda akan diminta untuk mengonfigurasi tautan ke organisasi dan proyek Azure DevOps Anda. Anda juga dapat mengonfigurasi tautan pada tab Item Kerja.
Kirim lebih banyak telemetri ke Application Insights
Selain telemetri out-of-the-box yang dikirim oleh Application Insights SDK, Anda dapat:
Mengambil jejak log dari kerangka kerja pengelogan favorit Anda di .NET atau Java. Ini berarti Anda dapat mencari jejak log Anda dan menghubungkannya dengan tampilan halaman, pengecualian, dan kejadian lainnya.
Tulis kode untuk mengirim kejadian kustom, tampilan halaman, dan pengecualian.
Pelajari cara mengirim log dan telemetri kustom ke Application Insights.
Tanya jawab umum
Temukan jawaban atas pertanyaan umum.
Berapa banyak data yang disimpan?
Lihat Ringkasan batas.
Bagaimana cara melihat data POST di permintaan server saya?
Kami tidak mencatat data POST secara otomatis, tetapi Anda dapat menggunakan TrackTrace atau panggilan log. Masukkan data POST ke dalam parameter pesan. Anda tidak dapat memfilter pesan dengan cara yang sama seperti memfilter properti, tetapi batas ukurannya lebih panjang.
Mengapa pencarian Azure Function saya tidak mengembalikan hasil?
Azure Functions tidak mencatat string kueri URL.
Pengalaman diagnostik terpadu secara otomatis menghubungkan telemetri sisi server dari semua komponen yang dipantau Application Insights Anda ke dalam satu tampilan. Tidak masalah jika Anda memiliki banyak sumber daya. Application Insights mendeteksi hubungan yang mendasarinya dan memungkinkan Anda untuk dengan mudah mendiagnosis komponen aplikasi, dependensi, atau pengecualian yang menyebabkan perlambatan atau kegagalan transaksi.
Apa yang dimaksud dengan komponen?
Komponen adalah bagian yang dapat disevarkan secara independen dari aplikasi terdistribusi atau layanan mikro Anda. Tim pengembang dan operasi memiliki visibilitas tingkat kode atau akses ke telemetri yang dihasilkan oleh komponen aplikasi ini.
- Komponen berbeda dari dependensi eksternal "diamati", seperti SQL dan hub peristiwa, yang mungkin tidak dapat diakses oleh tim atau organisasi Anda (kode atau telemetri).
- Komponen berjalan di sejumlah instans server, peran, atau kontainer.
- Komponen dapat menjadi kunci instrumentasi Application Insights terpisah, bahkan jika langganan berbeda. Komponen juga dapat menjadi peran berbeda yang melaporkan ke satu kunci instrumentasi Application Insights. Pengalaman baru menunjukkan detail di semua komponen, terlepas dari bagaimana mereka disiapkan.
Catatan
Apakah Anda kehilangan tautan item terkait? Semua telemetri terkait berada di sisi kiri di bagian atas dan bawah .
Pengalaman diagnostik transaksi
Tampilan ini memiliki empat bagian utama:
- daftar hasil
- bagan transaksi lintas komponen
- daftar urutan waktu semua telemetri yang terkait dengan operasi ini
- panel detail untuk item telemetri yang dipilih
Bagan transaksi lintas komponen
Bagan ini memberikan garis waktu dengan bilah horizontal selama permintaan dan dependensi di seluruh komponen. Setiap pengecualian yang dikumpulkan juga ditandai pada garis waktu.
- Baris atas pada bagan ini mewakili titik masuk. Ini adalah permintaan masuk ke komponen pertama yang disebut dalam transaksi ini. Durasi adalah total waktu yang diperlukan agar transaksi selesai.
- Setiap panggilan ke dependensi eksternal adalah baris sederhana yang tidak dapat dibungkus, dengan ikon yang mewakili jenis dependensi.
- Panggilan ke komponen lain adalah baris yang dapat diciutkan. Setiap baris sesuai dengan operasi tertentu yang dipanggil pada komponen.
- Secara default, permintaan, dependensi, atau pengecualian yang Anda pilih muncul di samping. Pilih baris apa pun untuk melihat detailnya.
Catatan
Panggilan ke komponen lain memiliki dua baris. Satu baris mewakili panggilan keluar (dependensi) dari komponen pemanggil. Baris lainnya sesuai dengan permintaan masuk pada komponen yang dipanggil. Ikon yang mengawali dan gaya yang berbeda dari bilah durasi membantu membedakan di antara mereka.
Semua telemetri dengan ID Operasi ini
Bagian ini menunjukkan tampilan daftar datar dalam urutan waktu semua telemetri yang terkait dengan transaksi ini. Ini juga menunjukkan peristiwa dan jejak kustom yang tidak ditampilkan dalam bagan transaksi. Anda dapat memfilter daftar ini ke telemetri yang dihasilkan oleh komponen atau panggilan tertentu. Anda dapat memilih item telemetri apa pun dalam daftar ini untuk melihat detail terkait di samping.
Detail telemetri yang dipilih
Panel yang dapat diciutkan ini memperlihatkan detail item yang dipilih dari bagan transaksi atau daftar. Tampilkan semua daftar semua atribut standar yang dikumpulkan. Atribut kustom apa pun tercantum secara terpisah di bawah set standar. Pilih tombol elipsis (...) di bawah jendela Pelacakan Tumpukan Panggilan untuk mendapatkan opsi untuk menyalin jejak. Buka jejak profiler dan Buka rekam jepret debug memperlihatkan diagnostik tingkat kode di panel detail yang sesuai.
Hasil pencarian
Panel yang bisa diciutkan ini memperlihatkan hasil lain yang memenuhi kriteria filter. Pilih hasil apa pun untuk memperbarui detail masing-masing dari tiga bagian sebelumnya. Kami mencoba menemukan sampel yang kemungkinan besar memiliki detail yang tersedia dari semua komponen, bahkan jika pengambilan sampel berlaku di salah satu dari mereka. Sampel ini ditampilkan sebagai saran.
Profiler dan Snapshot Debugger
Application Insights Profiler atau Snapshot Debugger membantu diagnostik tingkat kode masalah performa dan kegagalan. Dengan pengalaman ini, Anda dapat melihat jejak profiler atau rekam jepret dari komponen apa pun dengan satu pilihan.
Jika Anda tidak bisa membuat Profiler berfungsi, hubungi serviceprofilerhelp@microsoft.com.
Jika Anda tidak bisa membuat Snapshot Debugger berfungsi, hubungi snapshothelp@microsoft.com.
Tanya jawab umum
Bagian ini menyediakan jawaban atas pertanyaan umum.
Mengapa saya melihat satu komponen pada bagan dan komponen lain hanya ditampilkan sebagai dependensi eksternal tanpa detail apa pun?
Kemungkinan alasan:
- Apakah komponen lain diinstrumentasikan dengan Application Insights?
- Apakah komponen tersebut menggunakan SDK Application Insights stabil terbaru?
- Jika komponen ini adalah sumber daya Application Insights terpisah, validasi bahwa Anda memiliki akses.
Jika Anda memiliki akses dan komponen diinstrumentasikan dengan SDK Application Insights terbaru, beri tahu kami melalui saluran umpan balik di sudut kanan atas.
Saya melihat baris duplikat untuk dependensi. Apakah perilaku ini diharapkan?
Saat ini, kami menampilkan panggilan dependensi keluar yang terpisah dari permintaan masuk. Biasanya, kedua panggilan terlihat identik hanya dengan nilai durasi yang berbeda karena perjalanan pulang pergi jaringan. Ikon yang mengawali dan gaya yang berbeda dari bilah durasi membantu membedakan di antara mereka. Apakah presentasi data ini membingungkan? Berikan umpan balik Anda!
Bagaimana dengan penyimpanan jam di berbagai instans komponen?
Garis waktu disesuaikan untuk penyimpanan jam dalam bagan transaksi. Anda dapat melihat tanda waktu yang tepat di panel detail atau dengan menggunakan Analitik Log.
Perilaku ini secara desain. Semua item terkait, di semua komponen, sudah tersedia di sisi kiri di bagian atas dan bawah. Pengalaman baru ini memiliki dua item terkait yang tidak dicakup sisi kiri: semua telemetri dari lima menit sebelum dan sesudah peristiwa ini dan garis waktu pengguna.
Apakah ada cara untuk melihat lebih sedikit peristiwa per transaksi saat saya menggunakan Application Insights JavaScript SDK?
Pengalaman diagnostik transaksi menunjukkan semua telemetri dalam satu operasi yang berbagi ID Operasi. Secara default, SDK Application Insights untuk JavaScript membuat operasi baru untuk setiap tampilan halaman unik. Dalam aplikasi satu halaman (SPA), hanya satu peristiwa tampilan halaman yang dihasilkan dan satu ID Operasi digunakan untuk semua telemetri yang dihasilkan. Akibatnya, banyak peristiwa mungkin berkorelasi dengan operasi yang sama.
Dalam skenario ini, Anda dapat menggunakan Pelacakan Rute Otomatis untuk membuat operasi baru secara otomatis untuk navigasi di SPA Anda. Anda harus mengaktifkan enableAutoRouteTracking sehingga tampilan halaman dihasilkan setiap kali rute URL diperbarui (tampilan halaman logis terjadi). Jika Anda ingin me-refresh ID Operasi secara manual, panggil appInsights.properties.context.telemetryTrace.traceID = Microsoft.ApplicationInsights.Telemetry.Util.generateW3CId()
. Memicu peristiwa PageView secara manual juga mengatur ulang ID Operasi.
Mengapa durasi detail transaksi tidak menambahkan hingga durasi permintaan teratas?
Waktu yang tidak dijelaskan dalam bagan Gantt adalah waktu yang tidak tercakup oleh dependensi terlacak. Masalah ini dapat terjadi karena panggilan eksternal tidak diinstrumentasikan, baik secara otomatis atau manual. Ini juga dapat terjadi karena waktu yang diperlukan sedang dalam proses daripada karena panggilan eksternal.
Jika semua panggilan diinstrumentasi, dalam proses adalah akar penyebab yang mungkin untuk waktu yang dihabiskan. Alat yang berguna untuk mendiagnosis proses adalah profiler Application Insights .
Bagaimana jika saya melihat pesan Kesalahan mengambil data saat menavigasi Application Insights di portal Azure?
Kesalahan ini menunjukkan bahwa browser tersebut tidak dapat memanggil API yang diperlukan atau API mengembalikan respon kegagalan. Untuk memecahkan masalah perilaku, buka jendela InPrivate browser dan nonaktifkan ekstensi browser apa pun yang berjalan, lalu identifikasi apakah Anda masih dapat mereproduksi perilaku portal. Jika kesalahan portal masih terjadi, coba uji dengan browser lain, atau komputer lain, selidiki DNS atau masalah terkait jaringan lainnya dari komputer klien tempat panggilan API gagal. Jika kesalahan portal berlanjut dan membutuhkan penyelidikan lebih lanjut, kumpulkan jejak jaringan browser sambil mereproduksi perilaku portal yang tidak terduga, lalu buka kasus dukungan dari portal Azure.