summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlya Alekseyev <ialekseev@griddynamics.com>2011-01-28 20:10:03 +0300
committerIlya Alekseyev <ialekseev@griddynamics.com>2011-01-28 20:10:03 +0300
commitaf343a09b66ecded610051a443cb24f6b63e48ec (patch)
treeec760c02371a614092b437914bbdd81c43121d89
parent396b02f876030f1f54b7af32cf94fccbbe1fe46b (diff)
downloadnova-af343a09b66ecded610051a443cb24f6b63e48ec.tar.gz
nova-af343a09b66ecded610051a443cb24f6b63e48ec.tar.xz
nova-af343a09b66ecded610051a443cb24f6b63e48ec.zip
Changed default handler for uncaughted exceptions. Logging with level critical instead of print to stderr
-rw-r--r--nova/log.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/nova/log.py b/nova/log.py
index e1c9f46f4..70719e95b 100644
--- a/nova/log.py
+++ b/nova/log.py
@@ -31,6 +31,7 @@ import cStringIO
import json
import logging
import logging.handlers
+import sys
import traceback
from nova import flags
@@ -191,6 +192,10 @@ class NovaLogger(logging.Logger):
kwargs.pop('exc_info')
self.error(message, **kwargs)
+def handle_exception(type, value, tb):
+ logging.root.critical(str(value), exc_info=(type, value, tb))
+
+sys.excepthook = handle_exception
logging.setLoggerClass(NovaLogger)