Saya menjalankan Situs ASP.NET di mana saya mengalami masalah untuk menemukan beberapa Kesalahan JavaScript hanya dengan pengujian manual.
Apakah ada kemungkinan untuk menangkap semua Kesalahan JavaScript di sisi Klien dan mencatatnya di Server yaitu di EventLog (melalui Webservice atau semacamnya)?
javascript
logging
error-handling
MADMap
sumber
sumber
Jawaban:
Anda dapat mencoba menyiapkan penangan Anda sendiri untuk kejadian onerror dan menggunakan XMLHttpRequest untuk memberi tahu server apa yang salah, namun karena ini bukan bagian dari spesifikasi apa pun, dukungan agak tidak stabil .
Berikut adalah contoh dari Menggunakan XMLHttpRequest untuk mencatat kesalahan JavaScript :
sumber
setInterval
metode. Ada banyak layanan pelaporan kesalahan JS yang tersedia di web. Lihat ErrLytics . Ini juga memberi Anda analitik dari setiap tindakan pengguna di situs web Anda.Jawaban singkatnya : Ya, itu mungkin.
Jawaban yang lebih panjang: Orang-orang telah menulis tentang bagaimana Anda dapat (setidaknya sebagian) menyelesaikan masalah ini dengan menulis kode Anda sendiri. Namun, perhatikan bahwa ada layanan di luar sana yang tampaknya telah memastikan kode JS yang diperlukan berfungsi di banyak browser. Saya telah menemukan yang berikut ini:
Saya tidak dapat berbicara untuk semua layanan ini karena saya belum mencobanya.
sumber
Saya baru saja menerapkan pencatatan kesalahan sisi server pada kesalahan javascript pada sebuah proyek di tempat kerja. Ada campuran kode lama dan kode baru yang menggunakan jQuery .
Saya menggunakan kombinasi
window.onerror
dan membungkus penangan kejadian jQuery dan fungsi onready dengan fungsi penanganan kesalahan (lihat: Pelacakan Kesalahan JavaScript: Mengapa window.onerror Tidak Cukup ).window.onerror
: menangkap semua kesalahan di IE (dan sebagian besar kesalahan di Firefox), tetapi tidak melakukan apa pun di Safari dan Opera.Setelah saya menemukan kesalahannya, saya menambahkan beberapa properti tambahan ke dalamnya (url, browser, dll) dan kemudian mempostingnya kembali ke server menggunakan panggilan ajax.
Di server saya memiliki halaman kecil yang hanya mengambil argumen yang diposting dan menampilkannya ke kerangka kerja logging server normal kami.
Saya ingin membuka kode sumber untuk ini (sebagai plugin jQuery). Jika ada yang tertarik beri tahu saya, akan membantu meyakinkan bos!
sumber
Jika Anda menggunakan Google Analytics, Anda dapat mencatat kesalahan javascript ke dalam Peristiwa Google Analytics.
Lihat aplikasi ini: http://siteapps.com/app/log_javascript_errors_with_ga-181
Semoga membantu.
sumber
Juga saya merekomendasikan menggunakan utilitas TraceTool , ia hadir dengan dukungan JavaScript dan sangat berguna untuk pemantauan JS.
sumber
Jika Anda ingin mencatat kesalahan sisi klien kembali ke server, Anda harus melakukan beberapa jenis pemrosesan server. Taruhan terbaik adalah memiliki layanan web yang dapat Anda akses melalui JavaScript (AJAX) dan Anda meneruskan info log kesalahan Anda ke sana.
Tidak 100% menyelesaikan masalah karena jika masalahnya ada pada server web yang menghosting layanan web Anda dalam masalah, pilihan lain Anda adalah mengirimkan info melalui halaman standar melalui string kueri, Salah satu metode melakukan itu dengan membuat tag Gambar secara dinamis (yang kemudian dihapus) saat browser akan mencoba dan memuat sumber gambar. Ini mengatasi panggilan JavaScript lintas domain dengan baik. Ingatlah bahwa Anda dalam masalah jika seseorang menonaktifkan gambar;)
sumber
Saya telah menggunakan Appfail baru-baru ini, yang menangkap kesalahan asp.net dan JavaScript
sumber
Anda berpotensi dapat melakukan panggilan Ajax ke server dari percobaan / penangkapan, tetapi itu mungkin yang terbaik yang dapat Anda lakukan.
Bolehkah saya menyarankan pengujian unit JavaScript? Mungkin dengan JSUnit ?
sumber