mirror of
https://github.com/doms9/iptv.git
synced 2026-01-21 03:59:03 +01:00
e
fix logging
This commit is contained in:
parent
d231f8c02e
commit
00000d9dfc
3 changed files with 34 additions and 8 deletions
|
|
@ -1,6 +1,11 @@
|
|||
import logging
|
||||
from logging.handlers import TimedRotatingFileHandler
|
||||
from pathlib import Path
|
||||
|
||||
LOG_DIR = Path(__file__).parent.parent.parent / "logs"
|
||||
|
||||
LOG_DIR.mkdir(exist_ok=True)
|
||||
|
||||
LOG_FMT = (
|
||||
"[%(asctime)s] "
|
||||
"%(levelname)-8s "
|
||||
|
|
@ -14,7 +19,6 @@ COLORS = {
|
|||
"INFO": "\033[32m",
|
||||
"WARNING": "\033[33m",
|
||||
"ERROR": "\033[31m",
|
||||
"CRITICAL": "\033[1;41m",
|
||||
"reset": "\033[0m",
|
||||
}
|
||||
|
||||
|
|
@ -40,18 +44,33 @@ def get_logger(name: str | None = None) -> logging.Logger:
|
|||
|
||||
logger = logging.getLogger(name)
|
||||
|
||||
if not logger.hasHandlers():
|
||||
handler = logging.StreamHandler()
|
||||
logger.setLevel(logging.INFO)
|
||||
|
||||
formatter = ColorFormatter(LOG_FMT, datefmt="%Y-%m-%d | %H:%M:%S")
|
||||
if logger.hasHandlers():
|
||||
return logger
|
||||
|
||||
handler.setFormatter(formatter)
|
||||
formatting = {"fmt": LOG_FMT, "datefmt": "%Y-%m-%d | %H:%M:%S"}
|
||||
|
||||
logger.addHandler(handler)
|
||||
file_handler = TimedRotatingFileHandler(
|
||||
LOG_DIR / "fetch.log",
|
||||
when="midnight",
|
||||
interval=1,
|
||||
backupCount=3,
|
||||
encoding="utf-8",
|
||||
utc=False,
|
||||
)
|
||||
|
||||
logger.setLevel(logging.INFO)
|
||||
file_handler.setFormatter(logging.Formatter(**formatting))
|
||||
|
||||
logger.propagate = False
|
||||
console_handler = logging.StreamHandler()
|
||||
|
||||
console_handler.setFormatter(ColorFormatter(**formatting))
|
||||
|
||||
logger.addHandler(file_handler)
|
||||
|
||||
logger.addHandler(console_handler)
|
||||
|
||||
logger.propagate = False
|
||||
|
||||
return logger
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue