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

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Пропоновані послуги
Показано 1 з 1 послугУсі 1626 послуг
Розробка дашборду моніторингу автонаповнення 1С-Бітрікс
Проста
~1-2 тижні
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • 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
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Розробка дашборда мониторингу автозаповнення 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 тижні