forward all logging to gui, if it exists

This commit is contained in:
Christoph Stahl 2024-09-30 14:39:29 +02:00
parent 46f68e2e92
commit dd84ff361b
4 changed files with 12 additions and 10 deletions

View file

@ -15,7 +15,6 @@ be one of:
from __future__ import annotations
import asyncio
import datetime
import logging
from logging.handlers import QueueHandler
from multiprocessing import Queue
import secrets
@ -38,10 +37,11 @@ from yaml import load, Loader
from . import jsonencoder
from .entry import Entry
from .sources import configure_sources, Source
from .log import logger
sio: socketio.AsyncClient = socketio.AsyncClient(json=jsonencoder)
logger: logging.Logger = logging.getLogger(__name__)
# logger: logging.Logger = logging"Syng"er(__name__)
sources: dict[str, Source] = {}

3
syng/log.py Normal file
View file

@ -0,0 +1,3 @@
import logging
logger = logging.getLogger("Syng")

View file

@ -16,7 +16,6 @@ from __future__ import annotations
import asyncio
import datetime
import hashlib
import logging
import os
import random
import string
@ -36,6 +35,7 @@ from .result import Result
from .sources.youtube import YouTube
from . import jsonencoder
from .log import logger
from .entry import Entry
from .queue import Queue
from .sources import available_sources
@ -71,8 +71,7 @@ async def root_handler(request: Any) -> Any:
return web.FileResponse(os.path.join(app["root_folder"], "index.html"))
logging.basicConfig(level=logging.WARNING)
logger = logging.getLogger(__name__)
# logger = logging.getLogger(__name__)
@dataclass

View file

@ -8,7 +8,6 @@ to this dictionary in its module.
from __future__ import annotations
import asyncio
import logging
import os.path
import shlex
from collections import defaultdict
@ -22,10 +21,11 @@ from typing import Tuple
from typing import Type
from abc import ABC, abstractmethod
from ..log import logger
from ..entry import Entry
from ..result import Result
logger: logging.Logger = logging.getLogger(__name__)
# logger: logging.Logger = logging.getLogger(__name__)
@dataclass
@ -146,7 +146,7 @@ class Source(ABC):
"""
args = ["--fullscreen", *options, video] + ([f"--audio-file={audio}"] if audio else [])
print(f"File is {video=} and {audio=}")
# print(f"File is {video=} and {audio=}")
mpv_process = asyncio.create_subprocess_exec(
"mpv",
@ -400,9 +400,9 @@ class Source(ABC):
"""
if not self._index:
self._index = []
print(f"{self.source_name}: generating index")
logger.warn(f"{self.source_name}: generating index")
self._index = await self.get_file_list()
print(f"{self.source_name}: done")
logger.warn(f"{self.source_name}: done")
chunked = zip_longest(*[iter(self._index)] * 1000, fillvalue="")
return [{"index": list(filter(lambda x: x != "", chunk))} for chunk in chunked]