Use other logging redirect class

This commit is contained in:
Nicolas Mowen 2025-06-24 16:13:25 -06:00
parent a490767f91
commit 4701bedde4
6 changed files with 12 additions and 7 deletions

View File

@ -38,7 +38,7 @@ class FaceRecognizer(ABC):
def classify(self, face_image: np.ndarray) -> tuple[str, float] | None:
pass
@redirect_stdout_to_logger(__name__, logging.DEBUG)
@redirect_stdout_to_logger(logger, logging.DEBUG)
def init_landmark_detector(self) -> None:
landmark_model = os.path.join(MODEL_CACHE_DIR, "facedet/landmarkdet.yaml")

View File

@ -28,7 +28,7 @@ class CpuDetectorConfig(BaseDetectorConfig):
class CpuTfl(DetectionApi):
type_key = DETECTOR_KEY
@redirect_stdout_to_logger(__name__, logging.DEBUG)
@redirect_stdout_to_logger(logger, logging.DEBUG)
def __init__(self, detector_config: CpuDetectorConfig):
interpreter = Interpreter(
model_path=detector_config.model.path,

View File

@ -54,7 +54,7 @@ class FaceNetEmbedding(BaseEmbedding):
self._load_model_and_utils()
logger.debug(f"models are already downloaded for {self.model_name}")
@redirect_stdout_to_logger(__name__, logging.DEBUG)
@redirect_stdout_to_logger(logger, logging.DEBUG)
def _load_model_and_utils(self):
if self.runner is None:
if self.downloader:

View File

@ -49,6 +49,9 @@ except ModuleNotFoundError:
from tensorflow.lite.python.interpreter import Interpreter
logger = logging.getLogger(__name__)
def get_ffmpeg_command(ffmpeg: FfmpegConfig) -> list[str]:
ffmpeg_input: CameraInput = [i for i in ffmpeg.inputs if "audio" in i.roles][0]
input_args = get_ffmpeg_arg_list(ffmpeg.global_args) + (
@ -423,7 +426,7 @@ class AudioEventMaintainer(threading.Thread):
class AudioTfl:
@redirect_stdout_to_logger(__name__, logging.DEBUG)
@redirect_stdout_to_logger(logger, logging.DEBUG)
def __init__(self, stop_event: threading.Event, num_threads=2):
self.stop_event = stop_event
self.num_threads = num_threads

View File

@ -189,11 +189,11 @@ class LogRedirect(io.StringIO):
self.flush()
def redirect_stdout_to_logger(log_name: str, level: int) -> Any:
def redirect_stdout_to_logger(logger: logging.Logger, level: int) -> Any:
def decorator(func: Callable):
@wraps(func)
def wrapper(*args, **kwargs):
current_log_pipe = LogRedirect(log_name, logging.ERROR)
current_log_pipe = LogRedirect(logger, logging.ERROR)
old_stdout = sys.stdout
old_stderr = sys.stderr

View File

@ -17,6 +17,8 @@ BATCH_SIZE = 16
EPOCHS = 50
LEARNING_RATE = 0.001
logger = logging.getLogger(__name__)
def __generate_representative_dataset_factory(dataset_dir: str):
def generate_representative_dataset():
@ -37,7 +39,7 @@ def __generate_representative_dataset_factory(dataset_dir: str):
return generate_representative_dataset
@redirect_stdout_to_logger(__name__, logging.DEBUG)
@redirect_stdout_to_logger(logger, logging.DEBUG)
def __train_classification_model(model_name: str) -> bool:
"""Train a classification model."""