merge: combine local dev updates into dev
This commit is contained in:
+13
-1
@@ -9,12 +9,17 @@ from starlette.exceptions import HTTPException as StarletteHTTPException
|
||||
from core.config.settings import config
|
||||
from core.http.models import HealthResponse
|
||||
from core.http.response import build_problem_details
|
||||
from core.logging import configure_logging, get_logger
|
||||
from core.logging import configure_logging, get_logger, log_service_banner
|
||||
from v1.router import router as mobile_router
|
||||
|
||||
|
||||
configure_logging(config)
|
||||
|
||||
log_service_banner(
|
||||
service_name=config.runtime.service_name,
|
||||
environment=config.runtime.environment,
|
||||
)
|
||||
|
||||
app = FastAPI()
|
||||
app.add_middleware(
|
||||
CORSMiddleware,
|
||||
@@ -26,6 +31,13 @@ app.add_middleware(
|
||||
app.include_router(mobile_router)
|
||||
logger = get_logger("api.app")
|
||||
|
||||
logger.info(
|
||||
"Web application initialized",
|
||||
environment=config.runtime.environment,
|
||||
debug=config.runtime.debug,
|
||||
log_level=config.runtime.log_level,
|
||||
)
|
||||
|
||||
|
||||
@app.get("/health", response_model=HealthResponse)
|
||||
async def health() -> HealthResponse:
|
||||
|
||||
@@ -43,8 +43,6 @@ def create_celery_app() -> Celery:
|
||||
worker_prefetch_multiplier=1,
|
||||
)
|
||||
|
||||
app.autodiscover_tasks(["tasks"])
|
||||
|
||||
configure_celery_app(app, settings=config)
|
||||
|
||||
return app
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from core.logging import celery
|
||||
from core.logging.banner import log_service_banner
|
||||
from core.logging.config import configure_logging
|
||||
from core.logging.context import bind_context, clear_context, get_context
|
||||
from core.logging.logger import get_logger
|
||||
@@ -12,4 +13,5 @@ __all__ = [
|
||||
"configure_logging",
|
||||
"get_context",
|
||||
"get_logger",
|
||||
"log_service_banner",
|
||||
]
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
from __future__ import annotations
|
||||
|
||||
import structlog
|
||||
|
||||
|
||||
def build_service_banner(service_name: str, environment: str) -> str:
|
||||
service_upper = service_name.upper()
|
||||
border = "=" * 50
|
||||
lines = [
|
||||
border,
|
||||
f" {service_upper}",
|
||||
f" Environment: {environment}",
|
||||
border,
|
||||
]
|
||||
return "\n".join(lines)
|
||||
|
||||
|
||||
def log_service_banner(service_name: str, environment: str) -> None:
|
||||
logger = structlog.get_logger("banner")
|
||||
banner = build_service_banner(service_name, environment)
|
||||
logger.info(banner)
|
||||
@@ -7,6 +7,7 @@ from typing import cast
|
||||
from celery import Celery, signals
|
||||
|
||||
from core.config.settings import Settings
|
||||
from core.logging.banner import log_service_banner
|
||||
from core.logging.config import configure_logging
|
||||
from core.logging.context import bind_context, clear_context
|
||||
|
||||
@@ -22,8 +23,14 @@ class CelerySignalHandlers:
|
||||
def build_celery_signal_handlers(
|
||||
settings: Settings | None = None,
|
||||
) -> CelerySignalHandlers:
|
||||
active_settings = settings or Settings()
|
||||
|
||||
def on_setup_logging(*_args: object, **_kwargs: object) -> None:
|
||||
configure_logging(settings)
|
||||
log_service_banner(
|
||||
service_name=active_settings.runtime.service_name,
|
||||
environment=active_settings.runtime.environment,
|
||||
)
|
||||
|
||||
def on_after_setup_task_logger(*_args: object, **_kwargs: object) -> None:
|
||||
configure_logging(settings)
|
||||
|
||||
Reference in New Issue
Block a user