# 2026-04-20 — Дневник ## Проект: FR24 / Noisemap — Фаза 2, Шаг 2 ### БТ финализировано - Файл: `tasks/flightradar24/docs/PHASE2_STEP2_DATA_MART.md` - FR24 API: `Flight tracks`, 40 кредитов/рейс, только по команде, T-1, SVO/DME/VKO/ZIA - FlightAware AeroAPI: только треки, ключ `7qMijd3b3gVudezng3eVhKtup8iKFr75` сохранён в `.env` как `FLIGHTAWARE_API_KEY` - Витрина `fr24_mart`: приоритет RTL-SDR > FR24 > FlightAware, источник в каждой записи - Шумовая модель: из прототипа, зоны 2/5/7/9 км (граница "Низкий" изменена 11→9 км) - Отложено: цена FlightAware Standard, глубина исторической загрузки FR24 ### FlightAware — тестирование ключа - Ключ `7qMijd3b3gVudezng3eVhKtup8iKFr75` протестирован и работает - Трек AFL245 (Сейшелы→Москва): 401 точка, 8+ часов, богатые метаданные - Тариф Personal: 500 запросов/мес бесплатно = ~250 рейсов/мес (2 запроса на рейс) - Бонус: фактические времена взлёта/посадки + задержки из `/flights/{ident}` - Ключ сохранён в `.env` на VM как `FLIGHTAWARE_API_KEY` ### Dev-агент — реализация (7м53с, 1.7M токенов) Создано 21 файл, изменено 2: - `db/init/005_schema_tracks.sql` — 8 таблиц (fr24_ext + fr24_mart) - `ingest/tracks_fr24/` — воркер FR24 треков (порт 8001), throttling 6 сек/запрос - `ingest/tracks_fa/` — воркер FlightAware треков (порт 8002) - `ingest/mart/` — воркер витрины + шумовая модель, noise_grid по round(lat,2) - `frontend/static/data_sources.html` + `data_sources.js` - `docker-compose.yml` — 3 новых сервиса - `frontend/main.py` — `/data-sources` + 5 API эндпоинтов ### Деплой на VM (fr24, 192.168.2.67) - DDL `005_schema_tracks.sql` применён через `docker exec fr24-postgres psql` - Контейнеры `fr24-tracks-fr24` (8001), `fr24-tracks-fa` (8002), `fr24-mart` — собраны и запущены, все healthy - Обнаружена ошибка в `main.py` (frontend): колонка `flight_date` vs `coverage_date` в `fr24_mart.source_coverage` - Фикс задеплоен, api пересобран ### Открытые задачи на завтра - Проверить `/data-sources` страницу после фикса - Запустить backfill Яндекса (21:00 UTC rate limit сброс) - Проверить noise_model.py — граница "Низкий" 7-9 км (изменена сегодня) - Уточнить цену FlightAware Standard тарифа