Перейти к содержанию

Устранение неполадок

Агенты отсутствуют

  1. Убедитесь, что события поступают:

bash curl -X POST http://localhost:8000/api/v1/ingest/events \ -H "X-API-Key: $API_KEY" \ -H "Content-Type: application/json" \ -d '{"agent_id":"test-agent","event_type":"task_completed","cost_usd":0.01,"business_value":1,"time_saved_minutes":5}'

  1. Для синхронизации AegisAI:

bash export AEGISAI_API_URL=https://aegisai.example/api/v1 export AEGISAI_API_KEY=... python scripts/migrate_aegisai_data.py

См. также: Интеграция.

Метрики пустые / не обновляются

bash docker compose logs api --tail 100 curl http://localhost:8000/api/v1/health/ready

  • Убедитесь, что period покрывает даты ваших событий (week / month).
  • Если Redis недоступен, readiness падает (флаги database/redis).
  • После bulk ingest TTL кэша около 30 секунд.
  • Функции платных планов возвращают 402, если подписка не active/trialing — проверьте Settings → Billing.

Не удаётся войти

  • Email должен быть валидным адресом (не .local) — demo: admin@example.com.
  • Для сброса admin-данных: пересоздайте volume БД (docker compose down -vудаляет данные) или повторно выполните seed.
  • Google SSO: tenant должен содержать email-домен пользователя в Users → Organizations (allowed_email_domains). Неизвестные домены отклоняются.
  • SSO никогда не создаёт пользователей super_admin — platform admins остаются только password/bootstrap.

Billing / 402 Payment Required

  • Free plan: ROI/compare/reports и >1 agent заблокированы. Активный Pro/Business открывает эти разделы.
  • Pro/Business без активного Stripe status ведут себя как Free.
  • Portal требует stripe_customer_id (сначала завершите Checkout один раз).

Deploy / migration failed

  • Ошибка pre-migrate backup прерывает deploy — исправьте контейнер Postgres, затем повторите.
  • Устаревший образ Alembic: deploy.sh собирает API до migrate; убедитесь, что IMAGE_TAG соответствует commit с новыми revisions.
  • Проверьте deploy.log и VERSION / GET /api/v1/version.
  • Откат: ./scripts/rollback.sh --sha $(cat VERSION.prev).

Custom domain не резолвится

Сохранение Settings → Domain только записывает tenants.custom_domain. Настройте DNS и добавьте маршруты Traefik/LE вручную — см. Развёртывание.

Пересоберите контейнер frontend:

bash docker compose up -d --build frontend

Lockfile / CI

bash ./scripts/check_lockfile.sh uv pip compile requirements.txt -o requirements-lock.txt

Coverage ниже 55% падает в CI — откройте артефакт coverage-html из workflow run.