aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Schofield <git@ajschof.me>2025-02-14 13:44:57 +0000
committerAlex Schofield <git@ajschof.me>2025-02-14 13:44:57 +0000
commit6182930c3ea53932c6153dd101264cb90c90f979 (patch)
tree05ff4eacd1ea4957eb7db7b563f762beff77dba2
parentd467ac7f4c08e0cd92a5b31ed21f5ff52309b710 (diff)
downloadgdpr-obfuscator-6182930c3ea53932c6153dd101264cb90c90f979.tar.gz
gdpr-obfuscator-6182930c3ea53932c6153dd101264cb90c90f979.zip
add universal logging for debugging
-rw-r--r--cli.py6
-rw-r--r--obfuscator/csv_reader.py11
-rw-r--r--obfuscator/logger.py21
3 files changed, 28 insertions, 10 deletions
diff --git a/cli.py b/cli.py
index bb12421..23c9057 100644
--- a/cli.py
+++ b/cli.py
@@ -1,5 +1,8 @@
import argparse
from obfuscator.csv_reader import CSVReader
+from obfuscator.logger import get_logger
+
+logger = get_logger("CLI")
def main():
parser = argparse.ArgumentParser(description="gdpr-obfuscator")
@@ -10,11 +13,12 @@ def main():
args = parser.parse_args()
if args.local and not args.s3:
+ logger.debug("User chose to read CSV from local path")
reader = CSVReader(args.local)
data = reader.read_local()
print(data)
else:
- pass
+ logger.debug("User chose to read CSV from S3")
if __name__ == "__main__":
main()
diff --git a/obfuscator/csv_reader.py b/obfuscator/csv_reader.py
index b365d45..42e8f8a 100644
--- a/obfuscator/csv_reader.py
+++ b/obfuscator/csv_reader.py
@@ -1,15 +1,8 @@
import csv
from typing import List, Dict
-import logging
-
-logger = logging.getLogger(__name__)
-logger.setLevel(logging.INFO)
-if not logger.handlers:
- handler = logging.StreamHandler()
- formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
- handler.setFormatter(formatter)
- logger.addHandler(handler)
+from logger import get_logger
+logger = get_logger("CSVReader")
class CSVReader:
def __init__(self, path: str):
diff --git a/obfuscator/logger.py b/obfuscator/logger.py
new file mode 100644
index 0000000..52c4f5e
--- /dev/null
+++ b/obfuscator/logger.py
@@ -0,0 +1,21 @@
+import logging
+import os
+
+def get_logger(name: str) -> logging.Logger:
+ logger = logging.getLogger(name)
+
+ if not logger.hasHandlers():
+ if os.getenv("DEBUG", "FALSE").upper() == "TRUE":
+ log_level = logging.DEBUG
+ else:
+ log_level = logging.INFO
+
+ logger.setLevel(log_level)
+
+ handler = logging.StreamHandler()
+ format = logging.Formatter("%(asctime)s - %(levelname)s - %(name)s - %(message)s")
+ handler.setFormatter(format)
+
+ logger.addHandler(handler)
+
+ return logger \ No newline at end of file
git.ajschof.me — hosted by ajschofield — powered by cgit