Разработка дашборда мониторинга автонаполнения 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Разработка дашборда мониторинга автонаполнения 1С-Битрикс
Простая
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1240
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    844
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    582
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    749
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    981

Разработка дашборда мониторинга автонаполнения 1С-Битрикс

Парсер работает, товары наполняются, но ответить на простые вопросы — «сколько товаров обновилось за сутки?», «какой процент ошибок?», «какой источник самый проблемный?» — невозможно без дашборда. Штатный журнал событий Битрикс для этого не подходит: он показывает сырые записи, а не агрегаты. Нужен отдельный экран с метриками, графиками и индикаторами здоровья.

Что выводим на дашборд

Дашборд отвечает на вопрос «всё ли в порядке?» за 5 секунд. Ключевые метрики:

Индикаторы состояния (верхняя полоса):

  • Всего источников / из них активных / с ошибками.
  • Товаров обработано за сутки: создано / обновлено / пропущено / ошибки.
  • Время последнего успешного запуска по каждому источнику.

Графики (центральная область):

  • Количество обработанных элементов по дням (stacked bar — created/updated/skipped/error).
  • Время выполнения парсинга по источникам (line chart).
  • Процент ошибок по источникам (bar chart).

Таблица источников (нижняя часть):

Источник Статус Последний запуск Элементов Ошибок Время Следующий запуск
Поставщик А OK 14:30 12 450 3 (0.02%) 8m 12s 20:30
Поставщик Б ERROR 12:00 0 (остановлен)

Цветовая схема: зелёный — последний запуск успешен и был менее 2 интервалов назад, жёлтый — ошибки >1%, красный — последний запуск failed или просрочен.

Источник данных

Дашборд строится на данных из таблицы задач парсера. Минимальная схема:

CREATE TABLE parser_task (
    id SERIAL PRIMARY KEY,
    source_id INT NOT NULL,
    status VARCHAR(20),
    started_at TIMESTAMP,
    finished_at TIMESTAMP,
    total_items INT DEFAULT 0,
    created_items INT DEFAULT 0,
    updated_items INT DEFAULT 0,
    error_items INT DEFAULT 0
);

Агрегация выполняется SQL-запросами при загрузке дашборда. Для графика по дням:

SELECT DATE(started_at) AS day,
       SUM(created_items) AS created,
       SUM(updated_items) AS updated,
       SUM(error_items) AS errors
FROM parser_task
WHERE started_at >= NOW() - INTERVAL '30 days'
GROUP BY DATE(started_at)
ORDER BY day;

На каталоге до 100 000 товаров и 10 источниках эти запросы выполняются мгновенно. Для крупных проектов добавьте материализованную таблицу parser_stats_daily, обновляемую агентом раз в час.

Реализация в административной панели

Дашборд реализуется как административная страница (/local/admin/parser_dashboard.php), подключённая через меню модуля. Для графиков используйте встроенную в Битрикс библиотеку amCharts (доступна в CAdminPage) или подключите Chart.js через $APPLICATION->AddHeadScript().

Структура страницы:

  1. Виджеты-карточки вверху — <div> с числовыми показателями, стилизованные через adm-detail-content. Битрикс CSS предоставляет классы adm-info-message, adm-warning-message, adm-error-message для цветовой индикации.
  2. Canvas-графики в центре — данные подгружаются AJAX-запросом к обработчику, который возвращает JSON с агрегатами.
  3. CAdminList внизу — стандартный список источников с кастомными колонками.

Автообновление

Дашборд должен обновляться без перезагрузки страницы. Добавьте setInterval с периодом 60 секунд, запрашивающий /local/admin/ajax/parser_stats.php. Обработчик возвращает JSON с текущим состоянием. На клиенте обновляем числа в карточках и перерисовываем графики.

Для индикации «парсер сейчас работает» используйте polling статуса из parser_task с status = 'running'. Показывайте анимированный спиннер рядом с названием источника.

Алерты прямо из дашборда

Добавьте кнопку «Настроить алерты» рядом с каждым источником. По клику — модальное окно с порогами: максимальный процент ошибок, максимальное время выполнения, максимальная задержка между запусками. Пороги хранятся в b_option модуля. Агент проверяет пороги и отправляет уведомление при превышении.

Сроки реализации

Компонент Время
SQL-агрегация + AJAX-обработчик 1-2 дня
Карточки + таблица источников 1-2 дня
Графики (Chart.js) 2-3 дня
Автообновление + индикация running 1 день
Настройка порогов алертов 1-2 дня
Итого 1-2 недели