fix a bug introduced upstream with settings.LOG_AGGREGATOR_AUDIT

This commit is contained in:
Ryan Petrello 2019-10-22 12:12:22 -04:00
parent a0bf3459eb
commit 8701f83922
No known key found for this signature in database
GPG Key ID: F2AA5F2122351777

View File

@ -288,13 +288,17 @@ class AWXProxyHandler(logging.Handler):
'''
thread_local = threading.local()
_auditor = None
def __init__(self, **kwargs):
# TODO: process 'level' kwarg
super(AWXProxyHandler, self).__init__(**kwargs)
self._handler = None
self._old_kwargs = {}
if settings.LOG_AGGREGATOR_AUDIT:
@property
def auditor(self):
if not self._auditor:
self._auditor = logging.handlers.RotatingFileHandler(
filename='/var/log/tower/external.log',
maxBytes=1024 * 1024 * 50, # 50 MB
@ -307,6 +311,7 @@ class AWXProxyHandler(logging.Handler):
return json.dumps(message)
self._auditor.setFormatter(WritableLogstashFormatter())
return self._auditor
def get_handler_class(self, protocol):
return HANDLER_MAPPING.get(protocol, AWXNullHandler)
@ -341,8 +346,8 @@ class AWXProxyHandler(logging.Handler):
if AWXProxyHandler.thread_local.enabled:
actual_handler = self.get_handler()
if settings.LOG_AGGREGATOR_AUDIT:
self._auditor.setLevel(settings.LOG_AGGREGATOR_LEVEL)
self._auditor.emit(record)
self.auditor.setLevel(settings.LOG_AGGREGATOR_LEVEL)
self.auditor.emit(record)
return actual_handler.emit(record)
def perform_test(self, custom_settings):