Иллюстрация импорта каталога корпоративных подарков: поток данных поставщика и выделенная незаполненная карточка

Диагностика сбоев импорта каталога на 1С-Битрикс

Повторный запуск не помог: XML поставщика обрывался до закрывающих тегов. Показываем, как команда WebGK разбирала этот и другие сбои импорта на 1С-Битрикс.

1С-БитриксИмпорт каталога

От проблемы к результату

Как мы решали конкретную задачу клиента и что получилось.

Проблема

Каталог S-Gifts не обновился после повторного запуска импорта. Команда проверила файл поставщика и увидела, что XML обрывался до закрывающих тегов. В других случаях похожий сбой возникал при обработке изображений или зависании импорта.

Решение

Проверяли исходные выгрузки, журнал XML-парсера и результат загрузки. Для проблемных изображений доработали подготовку файлов, а зависания исследовали сравнительными прогонами с разным набором обновляемых свойств.

Результат

В импортах добавили диагностические записи. Для одного поставщика протестировали очистку повреждённых изображений перед загрузкой. Ход повторных запусков и время обновления товаров проверяли по журналам.

Как это работает

Этапы реализации

XML обрывался до закрывающих тегов

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

1

Изображения срывали загрузку товаров

В одних выгрузках ссылки на изображения не открывались, в других приходили повреждённые файлы или файлы с расширением .filepath, которое Битрикс не обрабатывал как изображение. Для одного поставщика добавили очистку папки от повреждённых изображений перед импортом и протестировали изменение.

2

Зависания проверили отдельными прогонами

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

3
Сопровождение каталога

Где проверяли причину сбоя

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

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

Проверяли, полностью ли пришёл файл и какие данные доступны для загрузки.

Обработка изображений

Разбирали случаи повреждённых файлов и изображений с нестандартным расширением.

Импорт в каталог

Проверяли время обновления товаров и работу импортов после изменений.

Журнал загрузок

Добавляли диагностические записи и использовали их для проверки повторных запусков.

Три эпизода из сопровождения

Что происходило при загрузке

01

XML обрывался до закрывающих тегов

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

02

Изображения срывали загрузку товаров

В одних выгрузках ссылки на изображения не открывались, в других приходили повреждённые файлы или файлы с расширением .filepath, которое Битрикс не обрабатывал как изображение. Для одного поставщика добавили очистку папки от повреждённых изображений перед импортом и протестировали изменение.

03

Зависания проверили отдельными прогонами

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

Импорт зависает или каталог обновляется частично? Пришлите пример проблемной выгрузки и опишите, что не обновилось. Разберём одну выгрузку и определим, на каком этапе искать причину.