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
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -13,3 +13,4 @@ wheels/
|
||||||
.python-version
|
.python-version
|
||||||
stuff/
|
stuff/
|
||||||
M3U8/scrapers/caches/*
|
M3U8/scrapers/caches/*
|
||||||
|
*.log
|
||||||
|
|
@ -49,6 +49,8 @@ def load_base() -> tuple[list[str], int]:
|
||||||
|
|
||||||
|
|
||||||
async def main() -> None:
|
async def main() -> None:
|
||||||
|
log.info(f"{'=' * 10} Scraper Started {'=' * 10}")
|
||||||
|
|
||||||
base_m3u8, tvg_chno = load_base()
|
base_m3u8, tvg_chno = load_base()
|
||||||
|
|
||||||
tasks = [
|
tasks = [
|
||||||
|
|
@ -144,6 +146,10 @@ async def main() -> None:
|
||||||
|
|
||||||
log.info(f"Events saved to {EVENTS_FILE.resolve()}")
|
log.info(f"Events saved to {EVENTS_FILE.resolve()}")
|
||||||
|
|
||||||
|
for hndlr in log.handlers:
|
||||||
|
hndlr.flush()
|
||||||
|
hndlr.stream.write("\n")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
asyncio.run(main())
|
asyncio.run(main())
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,11 @@
|
||||||
import logging
|
import logging
|
||||||
|
from logging.handlers import TimedRotatingFileHandler
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
|
LOG_DIR = Path(__file__).parent.parent.parent / "logs"
|
||||||
|
|
||||||
|
LOG_DIR.mkdir(exist_ok=True)
|
||||||
|
|
||||||
LOG_FMT = (
|
LOG_FMT = (
|
||||||
"[%(asctime)s] "
|
"[%(asctime)s] "
|
||||||
"%(levelname)-8s "
|
"%(levelname)-8s "
|
||||||
|
|
@ -14,7 +19,6 @@ COLORS = {
|
||||||
"INFO": "\033[32m",
|
"INFO": "\033[32m",
|
||||||
"WARNING": "\033[33m",
|
"WARNING": "\033[33m",
|
||||||
"ERROR": "\033[31m",
|
"ERROR": "\033[31m",
|
||||||
"CRITICAL": "\033[1;41m",
|
|
||||||
"reset": "\033[0m",
|
"reset": "\033[0m",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -40,18 +44,33 @@ def get_logger(name: str | None = None) -> logging.Logger:
|
||||||
|
|
||||||
logger = logging.getLogger(name)
|
logger = logging.getLogger(name)
|
||||||
|
|
||||||
if not logger.hasHandlers():
|
logger.setLevel(logging.INFO)
|
||||||
handler = logging.StreamHandler()
|
|
||||||
|
|
||||||
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
|
return logger
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue