From 1c69742d4a8801cc997929c422ee44248124a6a2 Mon Sep 17 00:00:00 2001
From: eliott <eliott.sammier@tetras-libre.fr>
Date: Wed, 31 Jul 2024 16:25:03 +0200
Subject: [PATCH] Add log level parameter as env var

---
 tetras_extraction/script/src/common.py | 21 +++++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/tetras_extraction/script/src/common.py b/tetras_extraction/script/src/common.py
index 845650df..3bbf4da2 100644
--- a/tetras_extraction/script/src/common.py
+++ b/tetras_extraction/script/src/common.py
@@ -114,13 +114,30 @@ log_handler.setFormatter(
     logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
 )
 
+match environ.get("LOGLEVEL"):
+    case (
+        "critical"
+        | "CRITICAL"
+        | "error"
+        | "ERROR"
+        | "warning"
+        | "WARNING"
+        | "info"
+        | "INFO"
+        | "debug"
+        | "DEBUG" as l
+    ):
+        log_level = l.upper()
+    case _:
+        log_level = logging.INFO
+
 
 def get_logger(name: str) -> logging.Logger:
     """Returns a configured `Logger`.
 
-    :param name: The name of the logger (it is recommended to use `__name__`)
+    :param name: The name of the logger (it is recommended to use the file name)
     """
     logger = logging.getLogger(name)
-    logger.setLevel(logging.INFO)
+    logger.setLevel(log_level)
     logger.addHandler(log_handler)
     return logger
-- 
GitLab