move pool_recycle and pool_pre_ping in config.py

This commit is contained in:
Ilya Bezrukov 2024-07-30 02:39:47 +03:00
parent f62e05fd06
commit cd5845c180
2 changed files with 7 additions and 3 deletions

View File

@ -54,10 +54,14 @@ class StateStorageConfig:
@dataclass
class DatabaseConfig:
url: str
pool_recycle: int
pool_pre_ping: bool
@classmethod
def from_env(cls):
return cls(os.getenv("DATABASE_URL", "sqlite:///bot.db"))
return cls(os.getenv("DB_URL", "sqlite:///bot.db"),
int(os.getenv("DB_POOL_RECYCLE", 3600)),
bool(int(os.getenv("DB_POOL_PRE_PING", True))))
@dataclass

View File

@ -7,8 +7,8 @@ from .models import User
def get_engine(config: DatabaseConfig):
engine = create_engine(config.url,
pool_recycle=3600,
pool_pre_ping=True)
pool_recycle=config.pool_recycle,
pool_pre_ping=config.pool_pre_ping)
return engine