Moved logging setup to seperate module
All checks were successful
/ build (push) Successful in 59s

This commit is contained in:
florian 2025-11-03 19:47:37 +01:00
parent 5672af8d3f
commit 3ceaf3f455
9 changed files with 9 additions and 36 deletions

View File

@ -1,5 +1,7 @@
FROM python:3.12-slim
RUN apt-get update && apt-get install -y git
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

View File

@ -11,6 +11,7 @@ prometheus_client==0.23.1
pydantic==2.12.0
pydantic_core==2.41.1
python-json-logger==4.0.0
simple-logger-handler @ git+https://git.gansejunge.com/notifier/lib-logger-handler.git@main
requests==2.32.5
sniffio==1.3.1
starlette==0.48.0

View File

@ -3,7 +3,7 @@ import threading
from secret_handler import return_credentials
import os
import time
from logger_handler import setup_logger
from simple_logger_handler import setup_logger
db_username = return_credentials("/etc/secrets/db_username")
db_password = return_credentials("/etc/secrets/db_password")

View File

@ -1,6 +1,6 @@
import requests
from secret_handler import return_credentials
from logger_handler import setup_logger
from simple_logger_handler import setup_logger
dockerhub_token = return_credentials("/etc/secrets/dockerhub_token")
dockerhub_username = return_credentials("/etc/secrets/dockerhub_username")

View File

@ -1,6 +1,6 @@
import requests
from secret_handler import return_credentials
from logger_handler import setup_logger
from simple_logger_handler import setup_logger
github_token = return_credentials("/etc/secrets/github_token")
logger = setup_logger(__name__)

View File

@ -1,30 +0,0 @@
import os
import logging
try:
from pythonjsonlogger import jsonlogger
JSON_LOGGING = True
except ImportError:
JSON_LOGGING = False
LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO").upper()
if LOG_LEVEL not in {"ERROR", "DEBUG", "INFO", "WARNING", "CRITICAL"}:
LOG_LEVEL = "INFO"
def setup_logger(name: str) -> logging.Logger:
logger = logging.getLogger(name)
if not logger.handlers:
handler = logging.StreamHandler()
if JSON_LOGGING:
formatter = jsonlogger.JsonFormatter(
"%(asctime)s %(name)s %(levelname)s %(message)s"
)
else:
formatter = logging.Formatter(
"%(asctime)s - %(name)s - %(levelname)s - %(message)s"
)
handler.setFormatter(formatter)
logger.addHandler(handler)
logger.setLevel(getattr(logging, LOG_LEVEL))
logger.debug(f"Logger {name} initialized with level {LOG_LEVEL}")
return logger

View File

@ -5,7 +5,7 @@ from dockerhub_api import find_package_version_with_tag as find_package_version_
import uvicorn
from contextlib import asynccontextmanager
from db import get_db, create_connection_pool, close_connection_pool, start_healthcheck_thread
from logger_handler import setup_logger, LOG_LEVEL
from simple_logger_handler import setup_logger, LOG_LEVEL
from send_notification import send_notification
from metrics_server import REQUEST_COUNTER
import asyncio

View File

@ -1,4 +1,4 @@
from logger_handler import setup_logger
from simple_logger_handler import setup_logger
logger = setup_logger(__name__)

View File

@ -4,7 +4,7 @@ from fastapi import HTTPException
from secret_handler import return_credentials
import os
import time
from logger_handler import setup_logger
from simple_logger_handler import setup_logger
backend_api_url=os.getenv("BACKEND_API_URL","localhost:8101/internal/receive-notifications")