From 14d60921cab7820c3dd3d8a1aafcbfcc57b8e6a5 Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Mon, 18 Jan 2021 08:53:52 -0500 Subject: [PATCH] test --- fHDHR/cli/run.py | 3 ++- fHDHR/config/__init__.py | 29 ++--------------------------- fHDHR/logger/__init__.py | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 40 insertions(+), 28 deletions(-) create mode 100644 fHDHR/logger/__init__.py diff --git a/fHDHR/cli/run.py b/fHDHR/cli/run.py index 68e6141..6f4c074 100644 --- a/fHDHR/cli/run.py +++ b/fHDHR/cli/run.py @@ -6,6 +6,7 @@ import time from fHDHR import fHDHR_VERSION, fHDHR_OBJ import fHDHR.exceptions import fHDHR.config +import fHDHR.logger from fHDHR.db import fHDHRdb ERR_CODE = 1 @@ -72,7 +73,7 @@ def start(args, script_dir, fHDHR_web, origin, alternative_epg): print(e) return ERR_CODE_NO_RESTART - logger = settings.logging_setup() + logger = fHDHR.logger.Logger(settings) db = fHDHRdb(settings) diff --git a/fHDHR/config/__init__.py b/fHDHR/config/__init__.py index 8a6228a..105ede3 100644 --- a/fHDHR/config/__init__.py +++ b/fHDHR/config/__init__.py @@ -3,7 +3,6 @@ import sys import random import configparser import pathlib -import logging import subprocess import platform import json @@ -115,6 +114,7 @@ class Config(): ffmpeg_version = ffmpeg_proc.stdout.read() ffmpeg_proc.terminate() ffmpeg_proc.communicate() + ffmpeg_proc.kill() ffmpeg_version = ffmpeg_version.decode().split("version ")[1].split(" ")[0] except FileNotFoundError: ffmpeg_version = "Missing" @@ -132,6 +132,7 @@ class Config(): vlc_version = vlc_proc.stdout.read() vlc_proc.terminate() vlc_proc.communicate() + vlc_proc.kill() vlc_version = vlc_version.decode().split("version ")[1].split('\n')[0] except FileNotFoundError: vlc_version = "Missing" @@ -317,32 +318,6 @@ class Config(): if not self.dict["fhdhr"]["discovery_address"] or self.dict["fhdhr"]["discovery_address"] == "0.0.0.0": self.dict["fhdhr"]["discovery_address"] = None - def logging_setup(self): - - log_level = self.dict["logging"]["level"].upper() - - # Create a custom logger - logging.basicConfig(format='%(name)s - %(levelname)s - %(message)s', level=log_level) - logger = logging.getLogger('fHDHR') - log_file = os.path.join(self.internal["paths"]["logs_dir"], 'fHDHR.log') - - # Create handlers - # c_handler = logging.StreamHandler() - f_handler = logging.FileHandler(log_file) - # c_handler.setLevel(log_level) - f_handler.setLevel(log_level) - - # Create formatters and add it to handlers - # c_format = logging.Formatter('%(name)s - %(levelname)s - %(message)s') - f_format = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') - # c_handler.setFormatter(c_format) - f_handler.setFormatter(f_format) - - # Add handlers to the logger - # logger.addHandler(c_handler) - logger.addHandler(f_handler) - return logger - def __getattr__(self, name): ''' will only get called for undefined attributes ''' if name in list(self.dict.keys()): diff --git a/fHDHR/logger/__init__.py b/fHDHR/logger/__init__.py new file mode 100644 index 0000000..999d9b9 --- /dev/null +++ b/fHDHR/logger/__init__.py @@ -0,0 +1,36 @@ +import os +import logging + + +class Logger(): + + def __init__(self, settings): + self.config = settings + + log_level = self.config.dict["logging"]["level"].upper() + + # Create a custom logger + logging.basicConfig(format='%(name)s - %(levelname)s - %(message)s', level=log_level) + self.logger = logging.getLogger('fHDHR') + log_file = os.path.join(self.config.internal["paths"]["logs_dir"], 'fHDHR.log') + + # Create handlers + # c_handler = logging.StreamHandler() + f_handler = logging.FileHandler(log_file) + # c_handler.setLevel(log_level) + f_handler.setLevel(log_level) + + # Create formatters and add it to handlers + # c_format = logging.Formatter('%(name)s - %(levelname)s - %(message)s') + f_format = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') + # c_handler.setFormatter(c_format) + f_handler.setFormatter(f_format) + + # Add handlers to the logger + # logger.addHandler(c_handler) + self.logger.addHandler(f_handler) + + def __getattr__(self, name): + ''' will only get called for undefined attributes ''' + if hasattr(self.logger, name): + return eval("self.logger.%s" % name)