@@ -792,7 +792,11 @@ async def oauth_callback_http(request: Request) -> JSONResponse | RedirectRespon
|
|||||||
raise ValueError("Session token creation failed")
|
raise ValueError("Session token creation failed")
|
||||||
|
|
||||||
logger.info(f"✅ Session token created for {provider}: token_length={len(session_token)}")
|
logger.info(f"✅ Session token created for {provider}: token_length={len(session_token)}")
|
||||||
logger.info(f"🔧 Session token preview: {session_token[:20]}..." if len(session_token) > 20 else f"🔧 Session token: {session_token}")
|
logger.info(
|
||||||
|
f"🔧 Session token preview: {session_token[:20]}..."
|
||||||
|
if len(session_token) > 20
|
||||||
|
else f"🔧 Session token: {session_token}"
|
||||||
|
)
|
||||||
|
|
||||||
# Получаем redirect_uri из OAuth данных
|
# Получаем redirect_uri из OAuth данных
|
||||||
redirect_uri = oauth_data.get("redirect_uri", FRONTEND_URL)
|
redirect_uri = oauth_data.get("redirect_uri", FRONTEND_URL)
|
||||||
@@ -861,7 +865,9 @@ async def oauth_callback_http(request: Request) -> JSONResponse | RedirectRespon
|
|||||||
domain=cookie_domain, # Поддержка поддоменов
|
domain=cookie_domain, # Поддержка поддоменов
|
||||||
)
|
)
|
||||||
|
|
||||||
logger.info(f"🍪 Cookie установлен: name={SESSION_COOKIE_NAME}, domain={cookie_domain}, secure={SESSION_COOKIE_SECURE}")
|
logger.info(
|
||||||
|
f"🍪 Cookie установлен: name={SESSION_COOKIE_NAME}, domain={cookie_domain}, secure={SESSION_COOKIE_SECURE}"
|
||||||
|
)
|
||||||
logger.info(f"🔗 Final redirect: {final_redirect_url}")
|
logger.info(f"🔗 Final redirect: {final_redirect_url}")
|
||||||
logger.info(f"✅ OAuth успешно завершен для {provider}, user_id={author.id}")
|
logger.info(f"✅ OAuth успешно завершен для {provider}, user_id={author.id}")
|
||||||
return response
|
return response
|
||||||
|
|||||||
@@ -16,6 +16,13 @@ def start_sentry() -> None:
|
|||||||
try:
|
try:
|
||||||
logger.info("[utils.sentry] Sentry init started...")
|
logger.info("[utils.sentry] Sentry init started...")
|
||||||
|
|
||||||
|
# 🔍 Проверяем наличие DSN
|
||||||
|
if not GLITCHTIP_DSN:
|
||||||
|
logger.warning("[utils.sentry] GLITCHTIP_DSN не установлен, пропускаем инициализацию Sentry")
|
||||||
|
return
|
||||||
|
|
||||||
|
logger.info(f"[utils.sentry] Используем DSN: {GLITCHTIP_DSN[:50]}...")
|
||||||
|
|
||||||
# 🧾 Настройка LoggingIntegration для дублирования логов
|
# 🧾 Настройка LoggingIntegration для дублирования логов
|
||||||
# level=logging.WARNING - отправляем в GlitchTip только WARNING и выше
|
# level=logging.WARNING - отправляем в GlitchTip только WARNING и выше
|
||||||
# event_level=logging.ERROR - создаем события только для ERROR и выше
|
# event_level=logging.ERROR - создаем события только для ERROR и выше
|
||||||
@@ -56,5 +63,13 @@ def start_sentry() -> None:
|
|||||||
send_default_pii=True, # Отправка информации о пользователе (PII)
|
send_default_pii=True, # Отправка информации о пользователе (PII)
|
||||||
)
|
)
|
||||||
logger.info("[utils.sentry] Sentry initialized successfully.")
|
logger.info("[utils.sentry] Sentry initialized successfully.")
|
||||||
|
|
||||||
|
# 🧪 Отправляем тестовое событие для проверки работы GlitchTip
|
||||||
|
try:
|
||||||
|
sentry_sdk.capture_message("🧪 GlitchTip test message - система инициализирована", level="info")
|
||||||
|
logger.info("[utils.sentry] Тестовое сообщение отправлено в GlitchTip")
|
||||||
|
except Exception as test_e:
|
||||||
|
logger.warning(f"[utils.sentry] Не удалось отправить тестовое сообщение: {test_e}")
|
||||||
|
|
||||||
except (sentry_sdk.utils.BadDsn, ImportError, ValueError, TypeError) as _e:
|
except (sentry_sdk.utils.BadDsn, ImportError, ValueError, TypeError) as _e:
|
||||||
logger.warning("[utils.sentry] Failed to initialize Sentry", exc_info=True)
|
logger.warning("[utils.sentry] Failed to initialize Sentry", exc_info=True)
|
||||||
|
|||||||
Reference in New Issue
Block a user