Update handlers.py

The setFormatter tries to create the external.log file.. So we should check if LOG_AGGREGATOR_AUDIT is active here as well
This commit is contained in:
Martin Juhl
2019-10-22 01:02:31 +02:00
committed by Ryan Petrello
parent 7f1096f711
commit 321aa3b01d

View File

@@ -294,18 +294,19 @@ class AWXProxyHandler(logging.Handler):
super(AWXProxyHandler, self).__init__(**kwargs) super(AWXProxyHandler, self).__init__(**kwargs)
self._handler = None self._handler = None
self._old_kwargs = {} self._old_kwargs = {}
self._auditor = logging.handlers.RotatingFileHandler( if settings.LOG_AGGREGATOR_AUDIT:
filename='/var/log/tower/external.log', self._auditor = logging.handlers.RotatingFileHandler(
maxBytes=1024 * 1024 * 50, # 50 MB filename='/var/log/tower/external.log',
backupCount=5, maxBytes=1024 * 1024 * 50, # 50 MB
) backupCount=5,
)
class WritableLogstashFormatter(LogstashFormatter): class WritableLogstashFormatter(LogstashFormatter):
@classmethod @classmethod
def serialize(cls, message): def serialize(cls, message):
return json.dumps(message) return json.dumps(message)
self._auditor.setFormatter(WritableLogstashFormatter()) self._auditor.setFormatter(WritableLogstashFormatter())
def get_handler_class(self, protocol): def get_handler_class(self, protocol):
return HANDLER_MAPPING.get(protocol, AWXNullHandler) return HANDLER_MAPPING.get(protocol, AWXNullHandler)