Перейти к содержанию

Настройка периода отправления данных

Модуль "Данные для КПЭ" позволяет настроить отправление данных в систему КОМЭКС-BI.

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

При смене списка задач будет произведено автоматическое добавление новой задачи в список

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

Задача в указанный отрезок времени будет отправлена только одина раз. Если не указан временной отрезок, то задача будет отправлена один раз в день.

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

Каждое выполнение задачи логируется. Данные в рамках задачи разделяется на пакеты с максимальным размером в 1000 записей. На каждую задачу может быть неограниченное количество пакетов. Каждый пакет логируется. Если один из пакетов не отправлен, то вся задача считается проваленной.

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

После успешного выполнения задачи будет обновлена колонка "Последнее отправление". В момент запуска задачи повторно будут выбраны данные от времени последнего отправления для более оптимального обмена с КОМЭКС-BI.

Запуск задач для сбора данных

Выполнение задач происходит в фоновом режиме с использованием очередей. Для выполнения всех задач необходимо запустить команду php artisan queue:work. При возникновении ошибки программу надо запускать повторно. Рекомендация запускать обработку очередей через supervisor (https://laravel.ru/docs/v5/queues#supervisor)

Кроме выполнения задач необходимо настроить запуск планировщика Laravel. Для этого необходимо добавить вызов artisan команды schedule:run

Пример для Cron

* * * * * php /path/to/artisan schedule:run >>/dev/null 2>&1

Планировщик нужен для запуска задач по расписанию, с учетом периодов в настройках задач.