committed by
GitHub
1 changed files with 0 additions and 39 deletions
@ -1,39 +0,0 @@ |
|||
import logging |
|||
|
|||
from sqlalchemy import Engine |
|||
from sqlmodel import Session, select |
|||
from tenacity import after_log, before_log, retry, stop_after_attempt, wait_fixed |
|||
|
|||
from app.core.db import engine |
|||
|
|||
logging.basicConfig(level=logging.INFO) |
|||
logger = logging.getLogger(__name__) |
|||
|
|||
max_tries = 60 * 5 # 5 minutes |
|||
wait_seconds = 1 |
|||
|
|||
|
|||
@retry( |
|||
stop=stop_after_attempt(max_tries), |
|||
wait=wait_fixed(wait_seconds), |
|||
before=before_log(logger, logging.INFO), |
|||
after=after_log(logger, logging.WARN), |
|||
) |
|||
def init(db_engine: Engine) -> None: |
|||
try: |
|||
# Try to create session to check if DB is awake |
|||
with Session(db_engine) as session: |
|||
session.exec(select(1)) |
|||
except Exception as e: |
|||
logger.error(e) |
|||
raise e |
|||
|
|||
|
|||
def main() -> None: |
|||
logger.info("Initializing service") |
|||
init(engine) |
|||
logger.info("Service finished initializing") |
|||
|
|||
|
|||
if __name__ == "__main__": |
|||
main() |
Loading…
Reference in new issue