Spaces:
Running
Running
Download Thunder/utils/logger.py from Jishnupg/FileToLink: direct link, hf CLI and curl.
- Browser
- Download file 1.21 kB
-
https://huggingface.co/spaces/Jishnupg/FileToLink/resolve/main/Thunder/utils/logger.py
- Command line
-
hf download hf://spaces/Jishnupg/FileToLink/Thunder/utils/logger.py
-
curl -L -o logger.py https://huggingface.co/spaces/Jishnupg/FileToLink/resolve/main/Thunder/utils/logger.py
1.21 kB
| # Thunder/utils/logger.py | |
| import logging | |
| from logging.handlers import RotatingFileHandler, QueueHandler, QueueListener | |
| import os | |
| import queue | |
| import atexit | |
| import sys | |
| LOG_DIR = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), 'logs') | |
| os.makedirs(LOG_DIR, exist_ok=True) | |
| LOG_FILE = os.path.join(LOG_DIR, 'bot.txt') | |
| logging._srcfile = None | |
| logging.logThreads = 0 | |
| logging.logProcesses = 0 | |
| log_queue = queue.Queue(maxsize=10000) | |
| formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') | |
| file_handler = RotatingFileHandler(LOG_FILE, maxBytes=10*1024*1024, backupCount=5, encoding='utf-8') | |
| file_handler.setFormatter(formatter) | |
| console_handler = logging.StreamHandler(stream=sys.__stdout__) | |
| console_handler.setFormatter(formatter) | |
| console_handler.stream.reconfigure(encoding='utf-8', errors='replace') | |
| listener = QueueListener(log_queue, file_handler, console_handler, respect_handler_level=True) | |
| listener.start() | |
| logger = logging.getLogger('ThunderBot') | |
| logger.setLevel(logging.INFO) | |
| logger.propagate = False | |
| logger.addHandler(QueueHandler(log_queue)) | |
| atexit.register(listener.stop) | |
| __all__ = ['logger', 'LOG_FILE'] | |