Skip to content
Snippets Groups Projects
Commit a9ce61ad authored by Nikolay Stanchev's avatar Nikolay Stanchev
Browse files

Added logging exceptions thrown by the aggregator

parent c597c26a
No related branches found
No related tags found
No related merge requests found
...@@ -28,7 +28,6 @@ from time import time, sleep ...@@ -28,7 +28,6 @@ from time import time, sleep
from urllib.parse import urlparse from urllib.parse import urlparse
from clmcservice.utilities import generate_e2e_delay_report from clmcservice.utilities import generate_e2e_delay_report
import getopt import getopt
import sys
import logging import logging
...@@ -51,7 +50,7 @@ class Aggregator(object): ...@@ -51,7 +50,7 @@ class Aggregator(object):
""" """
if logger is None: if logger is None:
self.log = logging.getLogger('aggregator') self.log = logging.getLogger(__name__)
else: else:
self.log = logger self.log = logger
...@@ -182,12 +181,27 @@ class Aggregator(object): ...@@ -182,12 +181,27 @@ class Aggregator(object):
if __name__ == '__main__': if __name__ == '__main__':
# initialise a file logger, only when module's main method is run (NOT when aggregator class is imported somewhere else)
log = logging.getLogger('aggregator') log = logging.getLogger('aggregator')
hdlr = logging.FileHandler('/var/log/clmcservice/aggregator.log', mode='a') hdlr = logging.FileHandler('/var/log/clmcservice/aggregator.log', mode='a')
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s') formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
hdlr.setFormatter(formatter) hdlr.setFormatter(formatter)
log.addHandler(hdlr) log.addHandler(hdlr)
log.setLevel(logging.INFO) log.setLevel(logging.DEBUG)
# log all errors that are thrown in the execution of the aggregator with the logger object initialized above
import sys
import traceback
def report_error(error_type, error_value, error_traceback, log_object=log):
log_object.error("Uncaught error thrown!")
log_object.error("Error type: {0}".format(error_type))
log_object.error("Error value: {0}".format(error_value))
log_object.debug("Error traceback:")
for trace in traceback.format_tb(error_traceback):
log_object.debug(trace)
sys.excepthook = report_error
# Parse command line options # Parse command line options
try: try:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment