Spaces:
Runtime error
Runtime error
File size: 2,005 Bytes
85456ff |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
import functools
import logging
from io import StringIO # Python3
import sys
class SilencedStdOut:
# https://stackoverflow.com/questions/65608502/is-there-a-way-to-force-any-function-to-not-be-verbose-in-python
def __enter__(self):
self.old_stdout = sys.stdout
self.result = StringIO()
sys.stdout = self.result
def __exit__(self, *args, **kwargs):
sys.stdout = self.old_stdout
result_string = self.result.getvalue() # use if you want or discard.
class CustomFormatter(logging.Formatter):
GRAY = "\x1b[38m"
YELLOW = "\x1b[33m"
CYAN = "\x1b[36m"
RED = "\x1b[31m"
BOLD_RED = "\x1b[31;1m"
RESET = "\x1b[0m"
FORMAT = "[%(asctime)s - %(name)s - %(levelname)8s] - %(message)s (%(filename)s:%(lineno)d)"
FORMATS = {
logging.DEBUG: GRAY + FORMAT + RESET,
logging.INFO: GRAY + FORMAT + RESET,
logging.WARNING: YELLOW + FORMAT + RESET,
logging.ERROR: RED + FORMAT + RESET,
logging.CRITICAL: BOLD_RED + FORMAT + RESET,
logging.DEBUG: CYAN + FORMAT + RESET,
}
def format(self, record):
log_fmt = self.FORMATS.get(record.levelno)
formatter = logging.Formatter(log_fmt)
return formatter.format(record)
# create logger with 'spam_application'
logger = logging.getLogger("TrailBlazer")
logger.handlers = []
logger.setLevel(logging.DEBUG)
# create console handler with a higher log level
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.DEBUG)
console_handler.setFormatter(CustomFormatter())
logger.addHandler(console_handler)
critical = logger.critical
fatal = logger.fatal
error = logger.error
warning = logger.warning
warn = logger.warn
info = logger.info
debug = logger.debug
if __name__ == "__main__":
from DirectedDiffusion import Logger as log
log.info("info message")
log.warning("warning message")
log.error("error message")
log.debug("debug message")
log.critical("critical message")
|