Когда бизнес-процесс ведёт себя не так, как задумано, догадки бесполезны — нужно смотреть журнал. Битрикс24 фиксирует каждый шаг выполнения, и умение читать эту историю превращает отладку из шаманства в методичную работу. Разберём инструменты и приёмы поиска причины сбоя.
Журнал выполнения: главный инструмент
Журнал — это пошаговая история конкретного экземпляра процесса. Он открывается по элементу (сделке, записи списка, документу) и показывает, какие действия отработали, в каком порядке и с каким результатом. Именно здесь видно, на каком шаге процесс остановился.
- каждая запись — одно выполненное действие с временной меткой;
- видно, кто был исполнителем действия;
- ошибки и предупреждения выделяются в тексте записи;
- для зависшего процесса последняя запись указывает точку останова.
Первое, что делают при разборе сбоя, — открывают журнал проблемного экземпляра и смотрят последнюю запись: она отвечает на вопрос «где встали».
Действие «Лог в журнал»
Стандартный журнал фиксирует факт выполнения действия, но не показывает промежуточные значения переменных. Чтобы увидеть, что именно лежало в переменной на конкретном шаге, в схему вставляют служебное действие записи в журнал.
В его текст подставляют интересующие значения через «Вставить значение»:
Шаг 3. Счётчик = {=Variable:Schetchik}, Сумма = {=Document:SUM}, Ветка: крупная
После прогона такие строки видны в журнале и точно показывают, с какими данными процесс дошёл до нужного места. Это аналог отладочного вывода в программировании — дёшево и наглядно.
Тестовые запуски и изоляция
Отлаживать на потоке живых заявок опасно: ошибочный процесс отправит клиентам лишние письма или испортит данные. Правильнее изолировать тест.
- создайте тестовый элемент (тестовую сделку, запись, файл) с типичными данными;
- подставьте свои контакты вместо клиентских, чтобы уведомления шли вам;
- прогоните процесс и пройдите все ветки, меняя входные данные;
- после каждого прогона читайте журнал и сверяйте с ожиданием.
Отдельно проверяйте граничные случаи: пустые поля, минимальные и максимальные суммы, отсутствующего ответственного — именно на них процессы обычно и ломаются.
Процесс вообще не запускается
Частая ситуация: процесс есть, а на элементе не стартует. Причина обычно не в логике, а в настройках запуска.
| Причина | Что проверить |
|---|---|
| Не задан автозапуск | Настройки шаблона: запуск при создании/изменении |
| Нет прав | Доступ пользователя к процессу и к элементу |
| Условие старта не выполнено | Первое условие в шаблоне отсекает запуск |
| Процессы выключены | Включены ли БП для этого раздела/списка |
Если автозапуск настроен, но процесс молчит, запустите его вручную на том же элементе: если вручную идёт, а автоматически нет — дело в условии или событии запуска.
Зависшие и застрявшие экземпляры
Процесс, который висит неделями, — типичная находка при аудите портала. Список активных экземпляров и их состояние администратор видит в разделе управления бизнес-процессами. По журналу определяют точку останова, а дальше действуют по ситуации:
- ждёт ответа отсутствующего сотрудника — переназначить или завершить;
- встал на внешнем вызове — проверить доступность сервиса;
- попал в логическую яму (ни одна ветка условия не истинна) — исправить шаблон и перезапустить;
- потерял актуальность — принудительно завершить.
Помните, что зависшие экземпляры доигрывают на старой версии шаблона: исправление логики поможет только новым запускам, а старые придётся разбирать вручную.
Профилактика: как облегчить будущую отладку
Хорошо спроектированный процесс отлаживается в разы легче. Несколько привычек, которые окупаются:
- Осмысленные названия действий и веток вместо «Условие 1», «Условие 2» — журнал сразу читаем.
- Контрольные точки логирования на входах в крупные ветки.
- Ранняя валидация данных — ошибка ловится в понятном месте, а не в глубине схемы.
- Версионирование: сохраняйте рабочую копию шаблона перед крупными правками.
Итог
Отладка бизнес-процессов Битрикс24 держится на журнале выполнения: он показывает, где встал экземпляр и с какими данными. Добавьте к нему отладочные записи в журнал, изолированные тестовые запуски и проверку настроек автозапуска — и большинство проблем находится за минуты, а не за часы догадок. Не забывайте, что зависшие экземпляры живут на старой версии шаблона.
Мы в B2Bsite не только строим процессы, но и разбираем чужие — зависшие, непрозрачные, унаследованные от прежних подрядчиков. Если автоматизация на портале работает нестабильно, поможем найти причину по журналам и привести процессы в порядок.
Частые вопросы
Где смотреть журнал бизнес-процесса?
Журнал открывается по конкретному элементу — сделке, записи списка или документу. Он показывает пошаговую историю выполнения экземпляра: какие действия отработали, когда и с каким результатом.
Как увидеть значение переменной на конкретном шаге?
Стандартный журнал этого не показывает. Вставьте служебное действие записи в журнал и подставьте в его текст нужные значения через «Вставить значение» — они появятся в истории выполнения.
Почему процесс не запускается автоматически?
Проверьте настройки автозапуска, права пользователя, первое условие в шаблоне и включены ли бизнес-процессы для раздела. Если вручную процесс идёт, а автоматически нет — дело в событии или условии запуска.
Как безопасно тестировать процесс?
Создайте тестовый элемент с типичными данными, подставьте свои контакты вместо клиентских и прогоните все ветки. После каждого прогона читайте журнал и проверяйте граничные случаи.
Что делать с зависшим процессом?
Откройте журнал и найдите точку останова. В зависимости от причины переназначьте исполнителя, проверьте внешний сервис, исправьте шаблон или принудительно завершите экземпляр, если он потерял актуальность.
Почему исправление шаблона не помогло зависшему процессу?
Уже запущенные экземпляры доигрывают на прежней версии шаблона. Правки касаются только новых запусков, а старые зависшие экземпляры нужно разбирать и завершать вручную.
Как облегчить отладку в будущем?
Давайте действиям и веткам осмысленные названия, добавляйте контрольные точки логирования, валидируйте данные в начале и сохраняйте рабочую копию шаблона перед крупными изменениями.
Нужно ли оставлять отладочные записи в журнал в боевом процессе?
Нет. Обильное логирование замусоривает журнал и мешает читать историю реальных заявок. Оставляйте только осмысленные контрольные точки, а лишние записи убирайте.
Поможем с настройкой и поддержкой Битрикс24
Поможем с настройкой, доработкой и поддержкой Битрикс24.