Просмотр исходного кода

recreate Error objects from plain objects when logging to sentry

Brian Gough 10 лет назад
Родитель
Сommit
17cf288e4c
1 измененных файлов с 6 добавлено и 0 удалено
  1. 6 0
      libraries/logger/logging-manager.coffee

+ 6 - 0
libraries/logger/logging-manager.coffee

@@ -33,6 +33,12 @@ module.exports = Logger =
 						query: req.query
 						headers: req.headers
 						ip: req.ip
+				# recreate error objects that have been converted to a normal object
+				if !(error instanceof Error) and typeof error is "object"
+					newError = new Error(error.message)
+					for own key, value of error
+						newError[key] = value
+					error = newError
 				@raven.captureError(error, {tags: tags, extra: extra})
 	err: ()->
 		@logger.error.apply(@logger, arguments)