Maison > interface Web > js tutoriel > le corps du texte

Comment utiliser Raygun pour gérer les erreurs dans Node.js applications_node.js

WBOY
Libérer: 2016-05-16 15:53:32
original
1231 Les gens l'ont consulté

Notre package raygun4node fournit un moyen pratique d'envoyer vos erreurs Node.js à Raygun. Il peut être facilement installé à l'aide de npm :
.

npm install raygun
Copier après la connexion

Il vous donne un client Raygun que vous pouvez utiliser pour configurer votre clé API et qui peut être utilisé pour envoyer des messages d'erreur manuellement. Mais plus tard, vous pourriez dire : « Je ne veux pas envoyer toutes les erreurs manuellement. Envoyez-les toutes. Raygun, cela ressemble à beaucoup de travail à faire !" Si vous utilisez express.js, alors l'utilisation du processeur d'express peut facilement résoudre ce souci.

var raygun = require('raygun');
var raygunClient = new raygun.Client().init({ apiKey: 'your API key' });
app.use(raygunClient.expressHandler);
Copier après la connexion

Dans d'autres cas, vous souhaiterez peut-être simplement écouter uncaughtException et envoyer un message d'erreur de cette façon.

var raygun = require('raygun');
var raygunClient = new raygun.Client().init({ apiKey: 'your API key' });
process.on('uncaughtException', function(err) {
 raygunClient.send(err);
});
 
Copier après la connexion

Si vous voulez commencer à faire cela, vous devez comprendre ce que cela signifie. Mais lorsqu'une bulle temporelle retourne dans la boucle de l'événement, cet événement sera émis si vous ajoutez un auditeur pour cet événement, Ensuite, l'action par défaut ne se produira plus. L'action par défaut consiste à imprimer les informations de la pile d'appels et à quitter le processus. Si vous continuez après avoir déclenché cela, votre processus de nœud sera dans un état indéfini. node.js La documentation le dit spécifiquement. vous ne devriez pas l'utiliser et qu'il pourrait être supprimé à l'avenir. L'alternative suggérée est d'utiliser des domaines. Un petit exemple simple est présenté ci-dessous, et vous pouvez voir le client Raygun comment il s'adapte à votre utilisation du domaine.


var domain = require('domain');
var raygun = require('raygun');
var raygunClient = new raygun.Client().init({ apiKey: 'your API key' });
var server = require('http').createServer(function (req, res) {
 var d = domain.create();
 d.on('error', function (err) {
  raygunClient.send(err);
  // clean up and end
 });
 d.add(req);
 d.add(res);
 d.run(function () {
  // handle the req, res
 });
});
server.listen(3000);
Copier après la connexion

J'espère que cela vous donnera une meilleure compréhension de la gestion des erreurs dans Node.js à l'aide de Raygun.

Nettoyez continuellement les erreurs !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal