Перед использованием заданий ручной миграции убедитесь, что запущен воркер Symfony.
Описание актуально для версий SuiteCRM 8.10.0+
Задания миграции — это фоновые задания миграции данных, которые могут появиться в системе при её обновлении. Когда при обновлении системы изменяется способ хранения данных — например, перемещение вложений в новую систему хранения — задание миграции создаётся автоматически, чтобы существующие данные можно было преобразовать в удобное для вас время.
Поскольку задания миграции могут обрабатывать тысячи записей, они выполняются асинхронно в фоновом режиме. Это означает, что выполняющиеся задания не блокируют систему во время работы, и вы можете при выполнении миграции продолжать использовать SuiteCRM в обычном режиме.
Ключевые моменты:
Задания миграции создаются автоматически в процессе обновления — вам не нужно создавать их самостоятельно.
Каждое задание обрабатывает данные небольшими партиями (пакетами), поэтому оно не перегружает сервер.
Ход выполнения отслеживается и отображается в режиме реального времени, включая количество обработанных элементов; в ходе выполнения показывается количество успешно выполненных и количество неудачных обработок.
Если некоторые элементы были неудачно обработаны, можно повторить обработку только неудачно обработанных элементов или повторно запустить всё задание миграции, в зависимости от задания. См. раздел Обработка сбоев.
Для доступа к модулю Миграции войдите в систему как администратор и откройте в меню пользователя пункт Администрирование › Инструменты администратора › Миграции.
В Формы списка модуля отображаются следующие столбцы:
Имя |
Название задания миграции (например, Migrate Notes Attachments). |
Статус |
Текущий статус задания (см. Статусы заданий ниже). |
Этап |
Текущий этап обработки (постановка в очередь, обработка или завершение). |
Выполнение |
Сводка, показывающая процент выполнения, обработанные и необработанные элементы. |
Последний запуск |
Дата и время последнего выполнения задания. |
Пользователь |
Пользователь, назначенный заданию. |
Задание миграции проходит следующие этапы в течение своего жизненного цикла:
Начальный |
Задание создано, но еще не выполнялось. Доступна кнопка Запустить процесс миграции. |
Ожидание |
Задание поставлено в очередь и ожидает, пока фоновый процесс её обработает. |
Выполнение |
Задание активно обрабатывает элементы в фоновом режиме. Ход выполнения обновляется по мере завершения обработки пакетов. |
Завершено |
Все элементы успешно обработаны. Доступна кнопка Удалить. |
Неудачно |
В Задании возникли ошибки. В зависимости от задания могут быть доступны кнопки Повторить неудачную попытку и/или Перезапустить. |
Чтобы запустить задание миграции в первый раз:
Откройте Форому списка миграций как описано выше.
Откройте необходимое задание.
Нажмите на кнопку Запустить процесс миграции.
Появится диалоговое окно подтверждения — нажмите кнопку ОК для продолжения.
Статус задания изменится на Ожидание, а затем на Выполнение, как только воркер его обработает.
Кнопка Запустить процесс миграции видна только тогда, когда статус задания отображается как Начальный. После выполнения задания становятся доступны различные действия в зависимости от результата.
Во время выполнения задания миграции в подробном представлении отображается информация о ходе выполнения:
Показывает, на каком этапе находится обработка задания:
Система сканирует элементы для обработки и добавляет их в очередь.
Элементы в процессе пакетной обработки.
Выполняется необязательная постобработка (не все задания имеют этот этап).
Отображает процент выполнения, а также количество завершенных, неудачных обработок и общее количество элементов.
Метка времени последнего выполнения задания.
Обновите страницу, чтобы увидеть обновлённые данные. Поле выполнения обновляется каждый раз, когда завершается обработка партии элементов.
Если элементы задания были неудачно обработаны, то статус задания устанавливается следующий:
Если ЧАСТЬ элементов была обработана неудачно.
Если ВСЕ элементы были обработаны неудачно.
Для обработки сбоев могут быть доступны следующие варианты действий:
Повторная постановка в очередь только тех элементов, которые были обработаны неудачно, и их повторная обработка. Это действие может быть полезно, когда сбои были вызваны временной проблемой (например, блокировкой файла или таймаутом сети).
Удаление всех ранее обработанных элементов и запуск задания с нуля. Используйте этот вариант, если причина сбоя устранена и необходимо полностью повторно выполнить задание.
Не все задания поддерживают оба варианта действий.
Доступность вариантов зависит от настроек, установленных разработчиком задания.
После завершения задания миграции (или сбоя, но вам по той или иной причине нет необходимости повторять попытку миграции):
Откройте Форму просмотра задания.
Нажмите на кнопку Удалить.
Появится диалоговое окно подтверждения — нажмите на кнопку ОК для продолжения.
Запись задания удаляется из списка, все связанные с ним данные обработки также удаляются.
Удаление задания является необратимым. Запись задания удаляется, также удаляются все данные, связанные с обработкой элементов этого задания. Если вам позже потребуется повторно запустить миграцию, задание необходимо будет создать заново.
Следующая диаграмма суммирует стандартные действия администратора для осуществления миграции:
Размеры пакетов и другие параметры заданий описаны в разделе Справочник по настройке.
Обычно это означает, что воркер не запущен. Запуск и проверка воркера описаны в разделе Настройка воркеров.
Откройте Форму просмотра задания и проверьте его выполнение.
Распространенные причины проблемы:
Убедитесь, что воркер запускается от имени пользователя веб-сервера.
Если происходит миграция файлов, некоторые устаревшие файлы могли быть удалены или перемещены.
Увеличьте лимит памяти PHP или уменьшите размер пакета.
Проверьте журнал SuiteCRM (suitecrm.log) и журнал ошибок PHP для получения подробных сообщений об ошибках.
Если задание это позволяет, используйте кнопку Повторить неудачные, чтобы повторно обработать только те элементы, которые были неудачно обработаны. Если основную проблему не удается решить, вы можете Удалить задание и при необходимости вручную обработать необходимые элементы.
Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.