16 lines
460 B
Python
16 lines
460 B
Python
from logging.handlers import BufferingHandler
|
|
|
|
|
|
class FTBufferingHandler(BufferingHandler):
|
|
def flush(self):
|
|
"""
|
|
Override Flush behaviour - we keep half of the configured capacity
|
|
otherwise, we have moments with "empty" logs.
|
|
"""
|
|
self.acquire()
|
|
try:
|
|
# Keep half of the records in buffer.
|
|
self.buffer = self.buffer[-int(self.capacity / 2):]
|
|
finally:
|
|
self.release()
|