2013-05-07 8 views
7

जब winston बेजोड़ अपवादों को संभालता है तो यह बेजोड़ अपवाद की अच्छी जानकारी प्रिंट करता है। मैं "कैच अपवाद" पर कैसे कर सकता हूं?"कैच किए गए" अपवाद कैसे लॉग करें?

if (err) { 
// winston. log the catched exception 
} 

मैं स्रोत की जाँच की और वहाँ एक logException method प्रतीत हो रहा है, लेकिन मैं कैसे मैं इसे इस्तेमाल कर सकते हैं पता नहीं है।

var logger = new winston.Logger({ 
    transports: [new winston.transports.Console({handleExceptions: true})] 
}) 
var err = new Error('test error.') 
logger.logException(err.message) //no method 'logException' 

उत्तर

0

logExceptionLogger वर्ग की नहीं, Transport की एक विधि है।

var winston = require('winston'); 
var logger = new winston.Logger({ 
    transports: [new winston.transports.Console({handleExceptions: true})] 
}) 
var err = new Error('test error.'); 
logger.error(err.message); 

https://github.com/flatiron/winston#using-logging-levels

1

आप catched अपवाद वापस प्रक्रिया को फेंकना कर सकते हैं, त्रुटि winston.Logger द्वारा catched से होगा: क्या आप की जरूरत एक error तरीका है। उदाहरण:

process.emit('uncaughtException', err); 
1
var winston = require('winston'); 
var err = new Error('test error.'); 
winston.error(winston.exception.getAllInfo(err)); 
+0

हो सकता है कि इस विंस्टन के एक पुराने संस्करण से है, लेकिन ऐसी कोई एपीआई है। https://github.com/winstonjs/winston – Seth

संबंधित मुद्दे