"""Betterstack logging for API endpoint calls.""" import os import time from datetime import datetime, timezone import requests BETTERSTACK_URL = "https://in.logs.betterstack.com" def log_to_betterstack( endpoint_name: str, original_text: str, formatted_text: str | dict, model_name: str, time_elapsed: float, ) -> None: token = os.environ.get("BETTERSTACK_SOURCE_TOKEN") if not token: return payload = { "dt": datetime.now(timezone.utc).isoformat(), "message": f"Endpoint called: {endpoint_name}", "endpoint_name": endpoint_name, "model_name": model_name, "original_text": original_text, "formatted_text": formatted_text, "time_elapsed": round(time_elapsed, 4), "request_date": datetime.now(timezone.utc).strftime("%Y-%m-%d %H:%M:%S"), "level": "info" } try: requests.post( BETTERSTACK_URL, json=payload, headers={ "Authorization": f"Bearer {token}", "Content-Type": "application/json", }, timeout=5, ) except Exception: pass