remote_service/src/logger.py
ZZY 9297f9170a feat: 重构项目并添加新功能
- 移除 defaultenv 文件和未使用的模板文件
- 重构 main.py,添加新的 Docker Compose 配置解析逻辑
- 新增 Nginx 配置生成和安全重启功能
- 更新 requirements.txt,替换 jinja2 为 pyyaml
- 删除未使用的 src/config_reader.py 和 src/jinja2_render.py 文件
2025-04-26 16:56:38 +08:00

35 lines
964 B
Python

"""
统一日志工具
"""
import logging
class ColorFormatter(logging.Formatter):
"""
using terminal color to print colorful log
"""
COLORS = {
'WARNING': '\033[93m',
'ERROR': '\033[91m',
'CRITICAL': '\033[91m',
'INFO': '\033[94m',
'DEBUG': '\033[92m',
'ENDC': '\033[0m'
}
def format(self, record):
color = self.COLORS.get(record.levelname, '')
message = super().format(record)
return f"{color}{message}{self.COLORS['ENDC']}" if color else message
def get_logger(name: str | None = None):
"""
using ColorFormatter to print colorful log
"""
logger = logging.getLogger(name)
logger.setLevel(logging.INFO)
handler = logging.StreamHandler()
handler.setFormatter(ColorFormatter('[%(asctime)s] %(levelname)s: %(message)s',
datefmt='%Y-%m-%d %H:%M:%S'))
logger.addHandler(handler)
return logger