From 9914b4c5691026f158758d2f0562f06344f9a150 Mon Sep 17 00:00:00 2001 From: Avik Basu Date: Tue, 29 Aug 2023 15:33:18 -0700 Subject: [PATCH] feat: log from file conf Signed-off-by: Avik Basu --- log.conf | 27 +++++++++++++++++++++++++++ numalogic/udfs/__init__.py | 26 ++++++++++++++++---------- numalogic/udfs/__main__.py | 3 ++- tests/udfs/test_trainer.py | 7 +++---- 4 files changed, 48 insertions(+), 15 deletions(-) create mode 100644 log.conf diff --git a/log.conf b/log.conf new file mode 100644 index 00000000..8fd6d40c --- /dev/null +++ b/log.conf @@ -0,0 +1,27 @@ +[loggers] +keys=root, pllogger + +[handlers] +keys=consoleHandler + +[formatters] +keys=consoleFormatter + +[logger_root] +level=INFO +handlers=consoleHandler + +[logger_pllogger] +level=ERROR +handlers=consoleHandler +qualname=pytorch_lightning +propagate=0 + +[handler_consoleHandler] +class=StreamHandler +level=DEBUG +formatter=consoleFormatter + +[formatter_consoleFormatter] +format=%(asctime)s - %(thread)d - %(levelname)s - %(message)s +class=logging.Formatter diff --git a/numalogic/udfs/__init__.py b/numalogic/udfs/__init__.py index 147922fb..7434a7a1 100644 --- a/numalogic/udfs/__init__.py +++ b/numalogic/udfs/__init__.py @@ -1,13 +1,24 @@ import logging import os +from numalogic._constants import BASE_DIR from numalogic.udfs._base import NumalogicUDF +from numalogic.udfs._config import StreamConf, PipelineConf, load_pipeline_conf +from numalogic.udfs.factory import UDFFactory, ServerFactory from numalogic.udfs.inference import InferenceUDF -from numalogic.udfs.trainer import TrainerUDF -from numalogic.udfs.preprocess import PreprocessUDF from numalogic.udfs.postprocess import PostprocessUDF -from numalogic.udfs.factory import UDFFactory, ServerFactory -from numalogic.udfs._config import StreamConf, PipelineConf, load_pipeline_conf +from numalogic.udfs.preprocess import PreprocessUDF +from numalogic.udfs.trainer import TrainerUDF + + +def set_logger() -> None: + """Sets the logger for the UDFs.""" + logging.config.fileConfig( + fname=os.path.join(BASE_DIR, "log.conf"), + disable_existing_loggers=False, + ) + if os.getenv("DEBUG", "false").lower() == "true": + logging.getLogger("root").setLevel(logging.DEBUG) __all__ = [ @@ -21,10 +32,5 @@ "PipelineConf", "load_pipeline_conf", "ServerFactory", + "set_logger", ] - - -if os.getenv("DEBUG"): - logging.basicConfig(level=logging.DEBUG) -else: - logging.basicConfig(level=logging.INFO) diff --git a/numalogic/udfs/__main__.py b/numalogic/udfs/__main__.py index 7d26c6c6..cacd1e6a 100644 --- a/numalogic/udfs/__main__.py +++ b/numalogic/udfs/__main__.py @@ -4,7 +4,7 @@ from numalogic._constants import BASE_CONF_DIR from numalogic.connectors.redis import get_redis_client_from_conf -from numalogic.udfs import load_pipeline_conf, UDFFactory, ServerFactory +from numalogic.udfs import load_pipeline_conf, UDFFactory, ServerFactory, set_logger LOGGER = logging.getLogger(__name__) CONF_FILE_PATH = os.getenv( @@ -13,6 +13,7 @@ if __name__ == "__main__": + set_logger() step = sys.argv[1] try: diff --git a/tests/udfs/test_trainer.py b/tests/udfs/test_trainer.py index f9cf13d5..3e7ffb9e 100644 --- a/tests/udfs/test_trainer.py +++ b/tests/udfs/test_trainer.py @@ -18,14 +18,13 @@ from numalogic.udfs import StreamConf, PipelineConf from numalogic.udfs.trainer import TrainerUDF - -logging.basicConfig(level=logging.DEBUG) - - REDIS_CLIENT = FakeStrictRedis(server=FakeServer()) KEYS = ["service-mesh", "1", "2"] +logging.basicConfig(level=logging.DEBUG) + + def mock_druid_fetch_data(nrows=5000): """Mock druid fetch data.""" return pd.read_csv(