INNER CODE UNIT · Python
posthog_middleware
grumpyp/aixplora · backend/main.py:40
async def posthog_middleware(request: Request, call_next):
response = await call_next(request)
async def capture_posthog():
print(request.method)
print(request.url.path)
db = Database().get_session()
try:
# User has a config
posthog_id = db.execute(text("SELECT posthog_id FROM config")).fetchall()[-1][0]
embeddings_model = db.execute(text("SELECT embeddings_model FROM config")).fetchall()[-1][0]
llm_model = db.execute(text("SELECT model FROM config")).fetchall()[-1][0]
route = request.url.path
posthog.capture(
f'{posthog_id}',
event=route,
properties={
'$set_once': {'embeddings_model': embeddings_model, 'llm_model': llm_model},