Skip to content

Наблюдение и восстановление ​

Для запуска нужно уметь заметить остановившуюся генерацию и восстановить проект вместе с его файлами.

Ответ /health не доказывает, что сайт можно собрать или вернуть из резервной копии.

Это требования к будущей эксплуатации. Дашборды, оповещения, расписание backup и проверенные RPO/RTO пока не подтверждены.

Что наблюдаем ​

СигналЧто он позволяет заметить
Доступность API и зависимостейПроцесс жив, но база или storage недоступны
Возраст ожидающих заданийОчередь перестала двигаться
Время выполнения, ошибки и повторыИсполнитель зависает или тратит ресурсы на цикл исправлений
Стоимость генерации и правокРасходы превышают выбранный лимит
Проверка тестовой публикацииHTML, картинки или маршрутизация сломались
Состояние доменов и HTTPSПользовательский адрес перестал работать
Результат backup и последнего restoreРезервная копия не существует или непригодна

Пороги определяем после замеров и назначения ответственного. Числа без измерений не становятся SLA. В логах нужны идентификаторы запроса, проекта, задания и версии; полные личные материалы и секреты по умолчанию не записываем.

Что сохраняем ​

Базу с владельцами, заданиями, версиями и доменами; файлы материалов и публикаций; необходимые ключи восстановления зашифрованных настроек. Репозиторий исходного кода не заменяет ни одну из этих копий. Постоянный диск и object storage сами по себе не являются независимым backup.

Копии базы и файлов должны соответствовать согласованной точке либо сохранять все объекты, на которые ссылается восстанавливаемая база. Пока копия нужна для восстановления, очистка старых объектов не должна её разрушать.

Проверка восстановления ​

На отдельном окружении восстановить данные и файлы, загрузить ключи безопасным способом, открыть проект и его опубликованную версию. Проверить картинки, доменную связь и возможность новой правки. Зафиксировать фактическую потерю данных и время восстановления; по этим результатам согласовать RPO и RTO.

Первые действия при сбое ​

Генерация остановилась. Сверить состояние задания и исполнителя, ограничить новые попытки, сохранить рабочую публикацию. Повторить задание через предусмотренный механизм, не создавать новый проект вручную.

Файлы недоступны. Проверить credentials, выбранный bucket/диск и существование нужной версии. Не повторять генерацию автоматически: это может замаскировать потерю оригиналов.

Домен не открывается. Проверить подтверждение, DNS, сертификат и привязку. Случайный сайт по неизвестному hostname не выдаётся; правила резервного адреса — в публикации.

Недоступна база. Остановить рискованные изменения, проверить соединение и состояние восстановления. Просмотр готовых сайтов должен быть по возможности отделён от редактора; конкретный режим работы при отказе базы требует теста выбранного маршрутизатора.

Bonsite — маленькие сайты для ваших больших идей.