Heim > Web-Frontend > js-Tutorial > Verwenden Sie Raygun, um Ausnahmen in AngularJS_AngularJS automatisch zu verfolgen

Verwenden Sie Raygun, um Ausnahmen in AngularJS_AngularJS automatisch zu verfolgen

WBOY
Freigeben: 2016-05-16 15:53:39
Original
1454 Leute haben es durchsucht

Eine der großen Errungenschaften von Angular.js ist das praktische Auslösen von Ausnahmen, da die Ausnahmemeldung oft genau angeben kann, warum Ihr Code abgestürzt ist. Große clientseitige Webanwendungen, die in zahlreichen Browsern auf der ganzen Welt ausgeführt werden, sind mit fehlenden Ausnahmen konfrontiert, und wenn diese erkannt werden, ist es möglich, den Fehler zu beheben und Benutzer zu gewinnen.

Bei der Behandlung von browser- und geräteübergreifenden Problemen ist es wichtig, diese Ausnahmemeldungen zu erhalten, da Ihre App möglicherweise korrekt und zuverlässig auf Ihrem Entwicklungscomputer ausgeführt wird, nicht jedoch auf den Browsern Ihrer Benutzer.

Die Lösung besteht darin, über einen automatisierten Ausnahmeverfolgungsdienst zu verfügen, und Raygun vereinfacht die Arbeit, indem es alle von Ihrer Angular-Web-App ausgelösten Ausnahmen empfängt, ohne dass Sie etwas tun müssen. Die Einrichtung geht wirklich schnell – befolgen Sie einfach die folgenden Schritte, um Raygun in Ihre Anwendung einzubinden.

Installieren

Laden Sie zunächst das kleine Raygun4JS-Skript herunter und fügen Sie es Ihrem Projekt hinzu. Es gibt drei Möglichkeiten, Folgendes zu erhalten:

Von Bower

Code kopieren Der Code lautet wie folgt:
bower install raygun4js

Laden Sie es von NuGet herunter – Öffnen Sie in Visual Studio die Package Manager-Konsole und geben Sie Folgendes ein:

Code kopieren Der Code lautet wie folgt:
Install-Package raygun4js

Manueller Download – Klicken Sie hier, um die Entwicklungsversion herunterzuladen oder komprimierte Version
Konfiguration

Als nächstes zitieren Sie dieses Skript. Wenn Sie statisches HTML verwenden, fügen Sie zur Seite oder zu Ihrem Modullader hinzu.

Rufen Sie abschließend den folgenden Code auf, um Raygun4JS einzurichten, bevor Ihre Hauptlogik von Angular ausgeführt wird:

Raygun.init('YOUR_API_KEY').attach();
Nach dem Login kopieren

Sie können für jede mit Raygun erstellte App einen API-Schlüssel generieren und in Ihrem Raygun-Dashboard darauf zugreifen – Sie haben eine 30-tägige kostenlose Testversion zum Testen.
Ausnahmen in Angular abfangen

Es gibt mindestens zwei Möglichkeiten, nicht behandelte Ausnahmen in Angular.js-Module einzufügen, indem Dekoratoren oder Fabriken verwendet werden. Diese beiden Methoden stellen Ihnen eine spezifische Implementierung von $ExceptionHandler zur Verfügung, und das oben erwähnte Raygun4JS sendet die Implementierung an Raygun.

Verwenden Sie einen Dekorateur

Das Dekoratormuster eignet sich sehr gut zum Einfügen von Verhalten in jeden Dienst, da es das ursprüngliche Verhalten nicht überschreibt, um die Trennung von Bedenken zwischen anderen gewünschten Funktionen sicherzustellen. Es zeichnet auch die Protokollierung und Verarbeitung auf. Ideale Möglichkeit, Ausnahmen zu behandeln kann im $provide-Dienst verwendet werden, den wir zur Implementierung unseres eigenen

verwenden werden
$exceptionHandler 函数:
 
app.config(function ($provide) {
 $provide.decorator("$exceptionHandler", ['$delegate', function($delegate) {
  return function (exception, cause) {
   Raygun.send(exception);
   $delegate(exception, cause);
  }
 }])
});
Nach dem Login kopieren

$delegate ist die Entität des Ausnahmehandlers, den wir aufrufen werden, um das ursprüngliche Verhalten der Ausgabe an die Konsole zu erhalten.

Sie können auch so viele andere Dienste erstellen, wie Sie benötigen:

$provide.decorator("$exceptionHandler", ['$delegate', '$log', function($delegate, $log) {
  return function (exception, cause) {
   $log.debug('Sending to Raygun');
   Raygun.send(exception);
   $delegate(exception, cause);
  }
 }])
Nach dem Login kopieren

Je nachdem, welche Art von Fehler aus der Angular-Logik abgerufen wird, wird der Ursachenparameter ausgefüllt. Wenn in einer Fabrik oder einem Dienst eine Ausnahme auftritt, erhalten Sie möglicherweise den Bereich, in dem der Parameter liegen kann. Sie können ihn als benutzerdefiniert verwenden Daten, indem Sie den obigen Raygun.send-Aufruf zusammen mit allem anderen, was Sie benötigen, ersetzen und an Raygun übergeben:

Raygun.send(exception, { cause: cause });
Nach dem Login kopieren

Verwenden Sie eine Fabrik

Eine schnelle Möglichkeit, Raygun in den Ausnahmehandler Ihrer Anwendung einzufügen, ist die Verwendung einer Factory. Dabei wird jedoch das ursprüngliche Konsolenprotokoll entfernt, das gespeichert werden muss, wenn Sie diese Funktionalität beibehalten und erneut aufrufen möchten .

app.factory('$exceptionHandler', function () {
 return function (exception) {
  Raygun.send(exception);
 }
});
Nach dem Login kopieren

Fehler beim manuellen Senden

Raygun4JS bietet Ihnen auch die Möglichkeit, Fehler jederzeit einfach manuell zu verfolgen:

Raygun.send(new Error('my custom error'));
Nach dem Login kopieren

Il existe de nombreux autres outils dont vous pouvez profiter sur le fournisseur, notamment le suivi unique des utilisateurs, le suivi des versions, les balises et bien plus encore – Voici la documentation pour voir toutes les informations de confiance pour .

Raygun peut même suivre les erreurs jQuery Ajax dans votre application Angular sans que vous ayez à faire quoi que ce soit de plus, vous serez donc entièrement pris en charge dès le départ
. Prêt à utiliser Raygun ?

Comme mentionné précédemment, il existe une version gratuite de 30 jours sans carte de crédit, vous pouvez donc en obtenir une pour voir si votre application fonctionne réellement pour vos utilisateurs. cet article, veuillez les laisser dans les commentaires ci-dessous.

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage