color logging
This commit is contained in:
parent
f0a680abc6
commit
80bb49776a
26
app/log.py
26
app/log.py
@ -1,6 +1,8 @@
|
|||||||
import logging
|
import logging
|
||||||
from logging.handlers import RotatingFileHandler
|
from logging.handlers import RotatingFileHandler
|
||||||
|
|
||||||
|
import click
|
||||||
|
|
||||||
from app.core.config import settings
|
from app.core.config import settings
|
||||||
|
|
||||||
# logger
|
# logger
|
||||||
@ -21,19 +23,31 @@ file_handler = RotatingFileHandler(filename=settings.LOG_PATH / 'moviepilot.log'
|
|||||||
backupCount=3,
|
backupCount=3,
|
||||||
encoding='utf-8')
|
encoding='utf-8')
|
||||||
file_handler.setLevel(logging.INFO)
|
file_handler.setLevel(logging.INFO)
|
||||||
|
level_name_colors = {
|
||||||
|
logging.DEBUG: lambda level_name: click.style(str(level_name), fg="green"),
|
||||||
|
logging.INFO: lambda level_name: click.style(str(level_name), fg="blue"),
|
||||||
|
logging.WARNING: lambda level_name: click.style(str(level_name), fg="orange"),
|
||||||
|
logging.ERROR: lambda level_name: click.style(str(level_name), fg="red"),
|
||||||
|
logging.CRITICAL: lambda level_name: click.style(
|
||||||
|
str(level_name), fg="bright_red"
|
||||||
|
),
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# 定义日志输出格式
|
# 定义日志输出格式
|
||||||
class CustomFormatter(logging.Formatter):
|
class CustomFormatter(logging.Formatter):
|
||||||
def format(self, record):
|
def format(self, record):
|
||||||
record.levelname = record.levelname + ':'
|
seperator = " " * (8 - len(record.levelname))
|
||||||
|
record.leveltext = level_name_colors[record.levelno](record.levelname + ":") + seperator
|
||||||
return super().format(record)
|
return super().format(record)
|
||||||
|
|
||||||
|
|
||||||
formatter = CustomFormatter("%(levelname)-10s%(asctime)s - %(filename)s - %(message)s")
|
# 终端日志
|
||||||
console_handler.setFormatter(formatter)
|
console_formatter = CustomFormatter("%(leveltext)s %(asctime)s - %(filename)s - %(message)s")
|
||||||
file_handler.setFormatter(formatter)
|
console_handler.setFormatter(console_formatter)
|
||||||
|
|
||||||
# 将Handler添加到Logger
|
|
||||||
logger.addHandler(console_handler)
|
logger.addHandler(console_handler)
|
||||||
|
|
||||||
|
# 文件日志
|
||||||
|
file_formater = CustomFormatter("%(levelname)s: %(asctime)s - %(filename)s - %(message)s")
|
||||||
|
file_handler.setFormatter(file_formater)
|
||||||
logger.addHandler(file_handler)
|
logger.addHandler(file_handler)
|
||||||
|
@ -47,4 +47,5 @@ python_hosts~=1.0.3
|
|||||||
watchdog~=3.0.0
|
watchdog~=3.0.0
|
||||||
tailer~=0.4.1
|
tailer~=0.4.1
|
||||||
openai~=0.27.2
|
openai~=0.27.2
|
||||||
cacheout~=0.14.1
|
cacheout~=0.14.1
|
||||||
|
click~=8.1.6
|
Loading…
x
Reference in New Issue
Block a user