Merge pull request #221 from grillazz/switch-logger-to-rotoger

switch to new Rotoger class
This commit is contained in:
Ordinary Hobbit
2025-10-14 11:32:24 +02:00
committed by GitHub
12 changed files with 27 additions and 25 deletions

View File

@@ -2,16 +2,18 @@ from typing import Annotated
from fastapi import APIRouter, Depends, Query, Request, status
from pydantic import EmailStr
from rotoger import AppStructLogger
from rotoger import Rotoger
from starlette.concurrency import run_in_threadpool
from app.services.smtp import SMTPEmailService
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
router = APIRouter()
@router.get("/redis", status_code=status.HTTP_200_OK)
async def redis_check(request: Request):
"""

View File

@@ -2,11 +2,11 @@ from typing import Annotated
from fastapi import APIRouter, Depends, Form
from fastapi.responses import StreamingResponse
from rotoger import AppStructLogger
from rotoger import Rotoger
from app.services.llm import get_llm_service
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
router = APIRouter()

View File

@@ -1,5 +1,5 @@
from fastapi import APIRouter, Depends, HTTPException, Request, status
from rotoger import AppStructLogger
from rotoger import Rotoger
from sqlalchemy.exc import SQLAlchemyError
from sqlalchemy.ext.asyncio import AsyncSession
@@ -8,7 +8,7 @@ from app.models.stuff import RandomStuff, Stuff
from app.schemas.stuff import RandomStuff as RandomStuffSchema
from app.schemas.stuff import StuffResponse, StuffSchema
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
router = APIRouter(prefix="/v1/stuff")

View File

@@ -1,7 +1,7 @@
from typing import Annotated
from fastapi import APIRouter, Depends, Form, HTTPException, Request, status
from rotoger import AppStructLogger
from rotoger import Rotoger
from sqlalchemy.ext.asyncio import AsyncSession
from app.database import get_db
@@ -9,7 +9,7 @@ from app.models.user import User
from app.schemas.user import TokenResponse, UserLogin, UserResponse, UserSchema
from app.services.auth import create_access_token
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
router = APIRouter(prefix="/v1/user")

View File

@@ -1,13 +1,13 @@
from collections.abc import AsyncGenerator
from fastapi.exceptions import ResponseValidationError
from rotoger import AppStructLogger
from rotoger import Rotoger
from sqlalchemy.exc import SQLAlchemyError
from sqlalchemy.ext.asyncio import async_sessionmaker, create_async_engine
from app.config import settings as global_settings
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
engine = create_async_engine(
global_settings.asyncpg_url.unicode_string(),

View File

@@ -1,9 +1,9 @@
import orjson
from attrs import define, field
from fastapi import Request
from rotoger import AppStructLogger
from rotoger import Rotoger
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
@define(slots=True)

View File

@@ -5,7 +5,7 @@ import asyncpg
from fastapi import Depends, FastAPI, Request
from fastapi.responses import HTMLResponse
from fastapi.templating import Jinja2Templates
from rotoger import AppStructLogger
from rotoger import Rotoger
from app.api.health import router as health_router
from app.api.ml import router as ml_router
@@ -18,7 +18,7 @@ from app.exception_handlers import register_exception_handlers
from app.redis import get_redis
from app.services.auth import AuthBearer
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
templates = Jinja2Templates(directory=Path(__file__).parent.parent / "templates")

View File

@@ -2,12 +2,12 @@ from typing import Any
from asyncpg import UniqueViolationError
from fastapi import HTTPException, status
from rotoger import AppStructLogger
from rotoger import Rotoger
from sqlalchemy.exc import IntegrityError, SQLAlchemyError
from sqlalchemy.ext.asyncio import AsyncSession
from sqlalchemy.orm import DeclarativeBase, declared_attr
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
class Base(DeclarativeBase):

View File

@@ -3,12 +3,12 @@ import time
import jwt
from fastapi import HTTPException, Request
from fastapi.security import HTTPAuthorizationCredentials, HTTPBearer
from rotoger import AppStructLogger
from rotoger import Rotoger
from app.config import settings as global_settings
from app.models.user import User
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
async def get_from_redis(request: Request, key: str):

View File

@@ -5,12 +5,12 @@ from email.mime.text import MIMEText
from attrs import define, field
from fastapi.templating import Jinja2Templates
from pydantic import EmailStr
from rotoger import AppStructLogger
from rotoger import Rotoger
from app.config import settings as global_settings
from app.utils.singleton import SingletonMetaNoArgs
logger = AppStructLogger().get_logger()
logger = Rotoger().get_logger()
@define

View File

@@ -29,7 +29,7 @@ dependencies = [
"polyfactory>=2.22.2",
"granian>=2.5.4",
"apscheduler[redis,sqlalchemy]>=4.0.0a6",
"rotoger",
"rotoger>=0.1.1",
]
[tool.uv]

8
uv.lock generated
View File

@@ -535,7 +535,7 @@ requires-dist = [
{ name = "python-multipart", specifier = ">=0.0.20" },
{ name = "redis", specifier = ">=6.4.0" },
{ name = "rich", specifier = ">=14.1.0" },
{ name = "rotoger" },
{ name = "rotoger", specifier = ">=0.1.1" },
{ name = "sqlalchemy", specifier = ">=2.0.43" },
{ name = "uvicorn", extras = ["standard"], specifier = ">=0.36.0" },
{ name = "uvloop", specifier = ">=0.21.0" },
@@ -1571,7 +1571,7 @@ wheels = [
[[package]]
name = "rotoger"
version = "0.2.0"
version = "0.1.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "attrs" },
@@ -1579,9 +1579,9 @@ dependencies = [
{ name = "structlog" },
{ name = "whenever" },
]
sdist = { url = "https://files.pythonhosted.org/packages/b8/d7/a8436ca0d01a08c536bd06650d399dd727283f1481fa0440df8806e0725a/rotoger-0.2.0.tar.gz", hash = "sha256:8350ff309755d1a29333200718faa88f15582a10725a12d41562931e1f0cde6b", size = 1795, upload-time = "2025-07-27T12:25:37.616Z" }
sdist = { url = "https://files.pythonhosted.org/packages/af/06/b31ae921c6eabc4b4d997722bb074ce3cb97b05abf61d0343c10d383a3fe/rotoger-0.1.1.tar.gz", hash = "sha256:5597cdf53b86c1f8b2504b59734a8b7dc7ac6b454c891f8312fe04eaaedc5897", size = 1741, upload-time = "2025-10-14T08:48:28.921Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/b1/26/11b83c7b92e8435e05c422a9c3d893c2d0d0d7a04369e1fbf2c07b36eb14/rotoger-0.2.0-py3-none-any.whl", hash = "sha256:33f19777b283da97b6da8c6f8d895126b750ed21b17d724e6e5e9db240673c29", size = 2728, upload-time = "2025-07-27T12:25:36.777Z" },
{ url = "https://files.pythonhosted.org/packages/b0/83/cda0c2e99112600163809037e3109fadad8651167ef0f336f58c3b4b8fc9/rotoger-0.1.1-py3-none-any.whl", hash = "sha256:64e19316d26d4dd64e388960bce9f5f9c30718dd9ec03a09563539695ae2e2a6", size = 2671, upload-time = "2025-10-14T08:48:27.799Z" },
]
[[package]]