Plan and summary of the isolated Compose run on copies of the real data files: migration without losses, real collection of AS62041, diff, backup and restore. Updates the analysis (observation 1, risk 9). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3.9 KiB
3.9 KiB
План: тестовый запуск на реальных данных (AS62041)
Источник: docs/analysis-2026-09-21.md, наблюдение 1 и риск 9 (изменения проверялись только на копиях и тестах). Цель - проверить миграцию боевых файлов и сбор по реальному внешнему источнику, ничего не меняя в исходных файлах проекта.
Границы
- Исходные файлы не изменяются:
config.json,data.json,fqdn_data.jsonв каталоге проекта остаются как есть. Перед запуском снимается копия вне проекта и вне тома с контрольными суммами; после запуска суммы сверяются. - Изолированный стенд: отдельный проект Compose (
ripereal), собственный том и порт 18000, временный.env; на хосте другие сервисы не затрагиваются. В том копируются копии файлов; конфигурация для теста - копия реальной с одним ASN (AS62041) и реальными FQDN. Реальные внешние запросы: один ASN в RIPEstat и DNS для трёх имён. - Стенд после проверки убирается (том, контейнеры, образ,
.env); отчёт остаётся вdocs/.
Шаги
- Копия исходных файлов и контрольные суммы; тесты в контейнере (базовая линия).
- Перенос копий в том по описанию README, запуск
docker compose up -d. - Миграция: база создана из
data.jsonиfqdn_data.json, число значений по источникам совпадает с файлами, оригиналы в томе переименованы в*.migrated-*, схема версии 3, журнал и состояние источников пусты. - До сбора:
/health,/sources(источники без попыток),/addresses, курсорX-Changes-Cursor. - Сбор:
POST /collect(ASN и FQDN) по реальным источникам;/sources(успех, число адресов AS62041),/healthok, итог в логе. - Diff на реальных данных:
/addresses/diffс курсором до сбора - что изменилось у AS62041 с момента файлаdata.json; проверка, что значения не настроенных источников остаются (стареют по TTL). - Копия и восстановление: ручной запуск задания
backup(через расписаниеPOST /schedule), затем намеренная порча базы в томе: восстановление из копии, данные на месте,last_restoreв/health. - Размеры и время: размер базы и журнала, время ответов
/addressesи/addresses/diff?since=0. - Уборка стенда, сверка сумм исходных файлов, отчёт
docs/summary-real-data-run.md, обновление анализа.
Критерии успеха
Исходные файлы не изменены; миграция без потерь; сбор AS62041 успешен; diff и восстановление работают на реальных данных; ошибок в логах нет; стенд убран.
Откат
Стенд изолирован: достаточно docker compose down -v и удаления образа; исходные файлы проекта не затрагиваются.