Настройка APM (Application Performance Monitoring) для 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка APM (Application Performance Monitoring) для 1С-Битрикс
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • 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
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка APM (Application Performance Monitoring) для 1С-Битрикс

APM — это постоянное наблюдение за производительностью приложения в реальном времени: время ответа, количество ошибок, медленные запросы, деградация под нагрузкой. В отличие от профилировщиков (Xdebug, Blackfire), которые запускаются вручную, APM работает непрерывно и сигнализирует до того, как клиенты начали жаловаться.

Из чего состоит APM для Битрикс

Для 1С-Битрикс практически используются два стека: Elastic APM (open-source, self-hosted) и New Relic / Datadog (SaaS). Принцип одинаков — PHP-агент перехватывает выполнение запросов и отправляет метрики в центральное хранилище.

Elastic APM — схема:

PHP-агент (elastic-apm-php) → APM Server → Elasticsearch → Kibana (APM UI)

Установка PHP-агента:

# Debian/Ubuntu
curl -L -O https://github.com/elastic/apm-agent-php/releases/download/v1.x.x/apm-agent-php_Linux_x86-64.deb
dpkg -i apm-agent-php_Linux_x86-64.deb

В php.ini:

extension=elastic_apm.so
elastic_apm.server_url=http://apm-server:8200
elastic_apm.service_name=bitrix-site
elastic_apm.environment=production
elastic_apm.transaction_sample_rate=0.1

transaction_sample_rate=0.1 — профилируется 10% запросов. На нагруженных сайтах 100% даёт ощутимый overhead.

Что мониторит APM в Битрикс

Агент автоматически перехватывает:

  • Входящие HTTP-запросы — время ответа, статус, URL, метод.
  • SQL-запросы — к b_iblock_element, b_sale_order, b_crm_deal и всем остальным таблицам. Видно время, тело запроса, план выполнения.
  • Внешние HTTP-вызовыcurl_exec, file_get_contents. Запросы к 1С, платёжным системам, внешним API.
  • Исключения\Bitrix\Main\SystemException, необработанные ошибки.

Для кастомных операций (длинный import-скрипт, тяжёлая агрегация) создаём span вручную:

use Elastic\Apm\ElasticApm;

$transaction = ElasticApm::getCurrentTransaction();
$span = $transaction->beginCurrentContextSpan('import.products', 'custom');
// ... логика импорта ...
$span->end();

Ключевые метрики и алерты

После настройки в Kibana APM UI доступны:

  • Response time — среднее и 95-й перцентиль времени ответа по URL.
  • Throughput — запросов в минуту.
  • Error rate — процент запросов с ошибками.
  • Apdex — индекс удовлетворённости: соотношение быстрых (< T), терпимых (< 4T) и медленных запросов.

Алерты настраиваются в Kibana Alerting: если p95 response time превышает 3 секунды более 5 минут — уведомление в Slack или email.

Сроки настройки

Этап Срок
Установка APM Server + Elasticsearch 1 день
Настройка PHP-агента, первые данные 2–4 часа
Настройка дашбордов и алертов 1 день
Тонкая настройка (sampling, кастомные span) 1–2 дня

APM не заменяет профилирование — он показывает что деградирует и когда. Профилировщик объясняет почему.