v/pol
1
0
mirror of https://github.com/taroved/pol synced 2025-05-16 14:20:10 -07:00
pol/pol/log.py
Alexandr Nesterenko 0656dcb77b test
2017-10-08 13:29:02 -04:00

34 lines
1.1 KiB
Python
Executable File

import sys
from twisted.logger import globalLogBeginner, formatEventAsClassicLogText
class bcolors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
class LogHandler(object):
"""Handler of twisted log meaasges"""
def __init__(self, stat_tool=None):
self.stat_tool = stat_tool
# requred, discardBuffer gets rid of the LimitedHistoryLogObserver, redirectStandardIO will loop print action
globalLogBeginner.beginLoggingTo([self.print_log], discardBuffer=True, redirectStandardIO=False)
def print_log(self, event):
if 'isError' in event and event['isError']:
sys.stdout.write(bcolors.FAIL + formatEventAsClassicLogText(event) + bcolors.ENDC)
sys.stderr.write(formatEventAsClassicLogText(event))
sys.stderr.flush()
else:
sys.stdout.write(formatEventAsClassicLogText(event))
sys.stdout.flush()