diff --git a/.env.example b/.env.example index 59b5ac6a..990108e0 100644 --- a/.env.example +++ b/.env.example @@ -226,6 +226,7 @@ LNBITS_RESERVE_FEE_PERCENT=1.0 ###################################### DEBUG=false +DEBUG_DATABASE=false BUNDLE_ASSETS=true # logging into LNBITS_DATA_FOLDER/logs/ diff --git a/lnbits/app.py b/lnbits/app.py index 4df9f295..c3a6dc98 100644 --- a/lnbits/app.py +++ b/lnbits/app.py @@ -579,6 +579,12 @@ def configure_logger() -> None: logging.getLogger("uvicorn.error").handlers = [InterceptHandler()] logging.getLogger("uvicorn.error").propagate = False + logging.getLogger("sqlalchemy").handlers = [InterceptHandler()] + logging.getLogger("sqlalchemy.engine.base").handlers = [InterceptHandler()] + logging.getLogger("sqlalchemy.engine.base").propagate = False + logging.getLogger("sqlalchemy.engine.base.Engine").handlers = [InterceptHandler()] + logging.getLogger("sqlalchemy.engine.base.Engine").propagate = False + class Formatter: def __init__(self): diff --git a/lnbits/db.py b/lnbits/db.py index 2fed0bf6..a6fdde7e 100644 --- a/lnbits/db.py +++ b/lnbits/db.py @@ -254,7 +254,9 @@ class Database(Compat): else: self.schema = None - self.engine = create_engine(database_uri, strategy=ASYNCIO_STRATEGY) + self.engine = create_engine( + database_uri, strategy=ASYNCIO_STRATEGY, echo=settings.debug_database + ) self.lock = asyncio.Lock() logger.trace(f"database {self.type} added for {self.name}") diff --git a/lnbits/settings.py b/lnbits/settings.py index b977904a..21a3cb91 100644 --- a/lnbits/settings.py +++ b/lnbits/settings.py @@ -358,6 +358,7 @@ class UpdateSettings(EditableSettings): class EnvSettings(LNbitsSettings): debug: bool = Field(default=False) + debug_database: bool = Field(default=False) bundle_assets: bool = Field(default=True) host: str = Field(default="127.0.0.1") port: int = Field(default=5000)