+7 495 008 8452 пн.-пт. 10:00 – 17:00
Загрузка...

Модуль имеет функционал резервного копирования и восстановления профилей. Это позволяет защититься от случайного удаления профилей, случайных изменений в профиле и т.д.

Модуль использует два способа создания резервных копий: автоматический и ручной.


Автоматическое создание резервных копий

Модуль автоматически создаёт резервные копии всех профилей при изменениях хотя бы в одном профиле: т.е. если в профиль внести изменения и сохранить, модуль в скором времени создаст очередную резервную копию всех профилей.

Резервные копии хранятся в папке /upload/<код_модуля>/autobackup (например, для модуля acrit.exportproplus это папка /upload/acrit.exportproplus/autobackup). Всего хранится 100 последних резервных копий. Этот лимит может быть изменён только через конфигурацию системы (визуально это сделать нет возможности), за это отвечает параметр autobackup_count, который можно установить, например, через \Bitrix\Main\Config\Option::set().

 (19.46 КБ)

Запуск автоматического резервного копирования выполняется агентами, например, Acrit\ExportProPlus\Backup::autobackup(), который по умолчанию запускается каждый час.

Таким образом, при внесении изменений в какой-либо профиль, в течение часа будет запущен агент, который создаст новую резервную копию всех профилей.

 

Ручное резервное копирование

Ручное резервное копирование подразумевает создание резервной копии администратором. Запуск возможен несколькими способами:

  1. из списка профилей (вверху кнопка «Резервное копирование» - «Скачать рез. копию выбранных профилей»):
    • если не отмечен ни один профиль – модуль создаст резервную копию всех имеющихся профилей,
    • если отмечен один или несколько профилей – модуль создаст резервную копию только выбранных профилей.
  2. со страницы профиля (вверху справа кнопка «Действия» - «Скачать рез. копию профиля») – модуль создаст резервную копию только текущего профиля.

После создания резервной копии она скачивается на Ваш компьютер.

Структура резервной копии

Резервная копия представляет собой zip-архив с единственным текстовым файлом, содержащим сериализованный массив профилей (даже если профиль один). При необходимости удобного просмотра содержимого данного файла следует использовать php-функцию unserialize().

 

Восстановление резервной копии

Восстановление доступно только на странице списка профилей: кнопка «Резервное копирование» - «Восстановить из рез. копии».

 (7.7 КБ)

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

Режим «обычный» означает восстановление профилей путём создания новых профилей, т.е. это всегда будет создавать новые профили.

Режим «точный» означает восстановление каждого из профиля под его настоящим ID, т.е. с заменой данных в существующем профиле. Таким образом, в данном режиме все восстанавливаемые профили будет в точности такими, какими были во время создания резервной копии, включая идентификаторы.

Если у Вас есть полная резервная копия, и Вы хотите восстановить все профили к их сохранённому состоянию, выберите файл, выберите режим «точный», нажмите кнопку «Удалить всё», и затем нажмите кнопку «Восстановить». Структура профилей будет в точности такой же, как была на момент создания этой резервной копии.

Бывают ситуации, когда имеется только автоматически созданная резервная копия (всегда содержит все профили), а восстановить нужно только один. В таких ситуациях следует вручную изменить данные в текстовом файле внутри архива (не забудьте сохранить оригинальный файл архива до изменений), но это работа для программиста: необходимо текст из файла десериализовать в массив, используя php-функцию unserialize(), в массиве оставить только нужный профиль, сериализовать его обратно php-функцией serialize(), и поместить полученный текст в текстовый файл, а его – в zip-архив, сохраняя имена файлов.

 

Восстановление резервной копии при наличии дополнительных атрибутов

Некоторые профили содержат критически важные данные, из-за наличия в профиле дополнительных загружаемых атрибутов. Например, Ozon и Wildberries. Резервное копирование сохраняет данные о выбранных полях для каждого из атрибутов, но загруженные данные по категориям и их атрибутам – нет. Таким образом, простое восстановление из резервной копии не восстанавливает атрибуты, поэтому в списке полей товаров и ТП будут только основные поля, но не будет полей для атрибутов.

В связи с этим, алгоритм восстановления для таких случаев следующий:

  1. восстановить резервную копию как обычно,

  2. не пытаться сохранить профиль (т.е. не нажимайте кнопки «Сохранить», «Применить», «Применить настройки для текущего инфоблока», и не нажимайте Alt+S),

  3. в восстановленном профиле перейти на вкладку «Настройки инфоблоков» - «Категории», нажать кнопку «Загрузить атрибуты категорий», дождаться завершения (можно нажать кнопку, удерживая Shift – в таком случае загрузятся только сами атрибуты, без загрузки значений справочников),
     (2.8 КБ)

  4. обновить страницу профиля, не сохраняя его,

  5. после этого в полях добавляются все категории с дополнительными атрибутами, в которых проставлены выбранные значения.

 

Дополнительные рекомендации

Мы рекомендуем регулярно создавать резервную копию каждого настраиваемого профиля, и хранить их на своём компьютере в течение какого-то времени. После завершения настройки профиля создание его резервной копии крайне рекомендуется. Т.к. случаи случайных серьёзных изменений в профилях – далеко не редкость.

В нашей практике были случае, когда после очень длительной кропотливой настройки профиля его настройки полностью сбивались простым изменением набора выгружаемых категорий (в профиль начали вносить изменения по ошибке, перепутав его с другим профилем). Автоматическое резервное копирование часто может выручить в таких ситуациях.


Возврат к списку