Troubleshooting: Licensing API грешки
Симптоми
https://api.dictaro.ai/healthвръща грешка или timeout- Потребителите не могат да се логнат
- Stripe webhooks failing
Диагностика
1. Health check
curl -sf https://api.dictaro.ai/health | jq .
2. Логове на контейнера
На VM-а (или чрез GitHub Actions → workflow_dispatch):
docker compose -f docker-compose.yml logs api --tail 100
3. Database свързаност
docker exec licensing-go-api-1 wget -qO- http://localhost:8080/health
Чести проблеми
Database connection refused
Причина: PostgreSQL сървърът не е достъпен или firewall блокира.
Решение:
# Проверете firewall rules в Azure Portal
# dictaro-db-server → Networking → Firewall rules
# Добавете IP на VM-а ако не е добавен
JWT key errors
Причина: JWT ключовете не са записани правилно.
Решение: Проверете дали GitHub Secrets JWT_PRIVATE_KEY и JWT_PUBLIC_KEY съдържат валиден PEM. Redeploy чрез workflow_dispatch ще ги презапише.
Stripe webhook signature mismatch
Причина: STRIPE_WEBHOOK_SECRET не съвпада с конфигурирания в Stripe Dashboard.
Решение:
- Stripe Dashboard → Developers → Webhooks → Signing secret
- Обновете
STRIPE_WEBHOOK_SECRETв GitHub Secrets - Redeploy
OAuth callback errors
Причина: Redirect URI не е регистриран в OAuth провайдъра.
Решение: Проверете redirect URI в:
- Google Cloud Console → Credentials
- Azure Portal → App Registrations → Authentication
- GitHub → Developer Settings → OAuth Apps
Трябва да включва: https://api.dictaro.ai/auth/callback/{provider}
Рестартиране
Ръчен redeploy: GitHub Actions → deploy-licensing.yml → Run workflow.