Gunakan Raygun untuk menjejaki pengecualian secara automatik dalam AngularJS_AngularJS

WBOY
Lepaskan: 2016-05-16 15:53:39
asal
1426 orang telah melayarinya

Salah satu pencapaian hebat Angular.js ialah melontar pengecualian praktikal, kerana mesej pengecualian selalunya boleh menunjukkan dengan tepat sebab kod anda ranap. Aplikasi web sisi pelanggan yang besar yang berjalan pada banyak penyemak imbas di seluruh dunia menghadapi pengecualian yang hilang, dan menangkapnya memungkinkan untuk membetulkan pepijat dan mendapatkan pengguna.

Apabila menangani isu merentas penyemak imbas dan peranti, adalah penting untuk menerima mesej pengecualian ini kerana apl anda mungkin berjalan dengan betul dan boleh dipercayai pada mesin pembangunan anda, tetapi tidak pada penyemak imbas pengguna anda.

Penyelesaiannya adalah untuk mempunyai perkhidmatan penjejakan pengecualian automatik dan Raygun memudahkan kerja dengan menerima semua pengecualian yang dilemparkan oleh apl web Angular anda tanpa memerlukan anda melakukan apa-apa. Ia benar-benar pantas untuk disediakan - cuma ikut langkah di bawah untuk memaut Raygun ke dalam aplikasi anda.

Pasang

Mula-mula, muat turun skrip Raygun4JS kecil dan tambahkannya pada projek anda. Terdapat 3 cara untuk mendapatkan:

Oleh Bower

Salin kod Kod adalah seperti berikut:
bower install raygun4js

Dapatkan daripada NuGet - Dalam Visual Studio, buka konsol Pengurus Pakej dan taip:

Salin kod Kod adalah seperti berikut:
Pasang-Pakej raygun4js

Muat turun manual – Klik di sini untuk memuat turun versi dev atau versi termampat
Tatarajah

Seterusnya, petik skrip ini. Jika anda menggunakan HTML statik, tambahkan

Akhir sekali, panggil kod berikut untuk menyediakan Raygun4JS sebelum logik Sudut utama anda dilaksanakan:

Raygun.init('YOUR_API_KEY').attach();
Salin selepas log masuk

Anda boleh menjana kunci API untuk setiap apl yang dibuat dengan Raygun, dan anda boleh mengaksesnya dalam papan pemuka Raygun anda - anda mempunyai percubaan percuma selama 30 hari untuk mengujinya.
Menangkap Pengecualian dalam Sudut

Terdapat sekurang-kurangnya dua cara untuk menyuntik pengecualian yang tidak dikendalikan ke dalam modul Angular.js, dengan menggunakan penghias atau kilang. Kedua-dua kaedah ini akan memberikan anda pelaksanaan khusus $exceptionHandler, dan Raygun4JS yang kami nyatakan di atas akan menghantar pelaksanaan kepada Raygun.

Gunakan penghias

Corak penghias sangat sesuai untuk menyuntik gelagat ke dalam mana-mana perkhidmatan kerana ia tidak menimpa gelagat asal untuk memastikan pemisahan kebimbangan antara ciri lain yang diingini Ia juga merekodkan pengelogan dan pemprosesan Cara yang sesuai untuk mengendalikan pengecualian boleh digunakan dalam perkhidmatan $provide, yang akan kami gunakan untuk melaksanakan

kami sendiri
$exceptionHandler 函数:
 
app.config(function ($provide) {
 $provide.decorator("$exceptionHandler", ['$delegate', function($delegate) {
  return function (exception, cause) {
   Raygun.send(exception);
   $delegate(exception, cause);
  }
 }])
});
Salin selepas log masuk

$delegate ialah entiti pengendali pengecualian, yang akan kami panggil untuk mendapatkan gelagat asal output ke konsol.

Anda juga boleh membuat seberapa banyak perkhidmatan lain yang anda perlukan:

$provide.decorator("$exceptionHandler", ['$delegate', '$log', function($delegate, $log) {
  return function (exception, cause) {
   $log.debug('Sending to Raygun');
   Raygun.send(exception);
   $delegate(exception, cause);
  }
 }])
Salin selepas log masuk

Bergantung pada jenis ralat yang diambil daripada logik Sudut, parameter punca diisi. Jika pengecualian berlaku dalam kilang atau perkhidmatan, anda mungkin mendapat julat yang boleh dimiliki oleh parameter tersebut, anda boleh Gunakannya sebagai tersuai data dengan menggantikan panggilan Raygun.send di atas, bersama-sama dengan apa-apa lagi yang anda perlukan, dan menyerahkannya kepada Raygun:

Raygun.send(exception, { cause: cause });
Salin selepas log masuk

Guna kilang

Cara cepat untuk meletakkan Raygun ke dalam pengendali pengecualian aplikasi anda adalah dengan menggunakan kilang, walaupun ia akan mengalih keluar log konsol asal, yang perlu disimpan jika anda ingin mengekalkan nilai asal dan memanggilnya semula .

app.factory('$exceptionHandler', function () {
 return function (exception) {
  Raygun.send(exception);
 }
});
Salin selepas log masuk

Ralat penghantaran manual

Raygun4JS juga memberi anda keupayaan untuk mengesan ralat secara manual pada bila-bila masa dengan mudah:

Raygun.send(new Error('my custom error'));
Salin selepas log masuk

Es gibt eine Reihe weiterer Tools, die Sie beim Anbieter nutzen können, darunter eindeutige Benutzerverfolgung, Versionsverfolgung, Tags und mehr – Hier ist die Dokumentation, um alle Vertrauensinformationen für anzuzeigen.

Raygun kann sogar jQuery-Ajax-Fehler in Ihrer Angular-App verfolgen, ohne dass Sie etwas extra tun müssen, sodass Sie sofort umfassend betreut werden
Bereit, Raygun zu verwenden?

Wie bereits erwähnt, gibt es eine 30-tägige kostenlose kreditkartenfreie Version, sodass Sie sehen können, ob Ihre App tatsächlich für Ihre Benutzer funktioniert, wenn Sie Fragen dazu haben Wenn Sie diesen Artikel lesen, hinterlassen Sie sie bitte unten in den Kommentaren.

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan