Как включить серверную отладку в 1С 8.3

10.06.26
Как включить серверную отладку в 1С 8.3

Серверная отладка в 1С нужна, когда код выполняется не в клиентском приложении, а в серверном контексте: в серверных общих модулях, фоновых и регламентных заданиях, обработчиках проведения, интеграциях или вызовах с директивой &НаСервере.

Чтобы серверный код появился среди предметов отладки, недостаточно поставить точку останова в Конфигураторе. Кластер серверов 1С должен быть запущен в режиме отладки, а Конфигуратор — подключен к соответствующему серверу отладки.

Общая последовательность действий выглядит так:

  1. Определить службу агента сервера нужной версии 1С.
  2. Записать ее текущие параметры запуска.
  3. Остановить службу в согласованное время.
  4. Добавить параметр запуска -debug.
  5. Запустить службу заново.
  6. Настроить протокол отладки в Конфигураторе.
  7. Подключить серверные предметы отладки.
  8. Проверить срабатывание точки останова.
Важно: перезапуск службы агента сервера 1С прерывает активные соединения с кластером. Выполняйте настройку в согласованное окно обслуживания и заранее предупредите пользователей.

Как быстро включить отладку на сервере 1С

ЭтапЧто сделатьЧто проверить
ПодготовкаОпределить версию платформы, имя службы и текущую строку запуска агента сервера.Изменяется именно служба нужного кластера 1С.
ОстановкаЗавершить пользовательские сеансы и остановить службу агента сервера.Нет активных пользователей и выполняющихся фоновых заданий.
Режим отладкиДобавить параметр -debug в строку запуска агента сервера.Параметр относится к процессу ragent, а не к клиенту 1С.
ПерезапускЗапустить службу агента заново.Агент, менеджеры кластера и рабочие процессы стартовали без ошибок.
КонфигураторВыбрать протокол отладки и открыть подключение предметов отладки.В списке появляются серверные предметы нужной информационной базы.
ПроверкаПоставить точку останова и выполнить серверный вызов.Выполнение останавливается на нужной строке серверного модуля.

Как устроена серверная отладка


        Конфигуратор
          отладчик
              │
              ▼
       Сервер отладки
              │
      ┌───────┼────────┐
      ▼       ▼        ▼
  Клиент   Серверный  Фоновое
           вызов      задание
              │
              ▼
       Кластер серверов 1С
Как читать схему: Конфигуратор не подключается напрямую к каждому серверному процессу. Обмен данными между отладчиком и предметами отладки организуется через механизм сервера отладки.

Что проверить перед включением отладки

Перед изменением параметров службы нужно определить, какой экземпляр платформы обслуживает нужный кластер. На одном сервере могут одновременно быть установлены несколько версий 1С, и изменение не той службы не даст результата или затронет другую рабочую среду.

Версия платформы и имя службы

Откройте оснастку служб Windows и найдите службу агента сервера 1С. В названии или пути к исполняемому файлу обычно указана версия платформы.

Проверьте:

  • полное имя службы;
  • версию платформы в пути к ragent.exe;
  • учетную запись, от которой работает служба;
  • каталог данных кластера;
  • номер основного порта агента;
  • дополнительные параметры запуска;
  • наличие нескольких служб разных версий.

Активные пользователи и фоновые задания

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

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

Резервная копия текущих параметров

До внесения изменений скопируйте текущую строку запуска службы и сохраните ее в рабочей документации. Это позволит быстро вернуть исходную конфигурацию.

Не меняйте одновременно несколько параметров. Сначала добавьте только режим отладки, перезапустите службу и проверьте результат.

Как включить режим отладки на сервере 1С в Windows

Для серверной отладки агент сервера 1С должен запускаться с параметром -debug. Этот параметр добавляют к строке запуска процесса ragent, обслуживающего нужный кластер.

Шаг 1. Найти службу агента сервера

  1. Нажмите Win + R.
  2. Введите:
Командная строка Windows
services.msc
  1. Найдите службу агента сервера «1С:Предприятия 8» нужной версии.
  2. Откройте ее свойства.
  3. Запишите имя службы, учетную запись запуска и путь к исполняемому файлу.

Шаг 2. Сохранить текущую конфигурацию

Перед изменением службы сохраните:

  • полный путь к ragent.exe;
  • все существующие параметры;
  • имя системной службы;
  • учетную запись запуска;
  • настройки восстановления службы после сбоя.

Шаг 3. Остановить службу

После завершения активных сеансов остановите службу через оснастку Windows или штатный инструмент администрирования.

Важно: не завершайте процессы ragent, rmngr и rphost принудительно без необходимости. Сначала используйте штатную остановку службы и дождитесь корректного завершения процессов.

Шаг 4. Добавить параметр -debug

В строку запуска агента нужно добавить параметр:

-debug

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

Условный пример:

"C:\Program Files\1cv8\8.3.xx.xxxx\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug

Значения 8.3.xx.xxxx, портов и каталога приведены только для демонстрации. Используйте параметры действующей службы своего сервера.

Типичная ошибка: копировать пример строки целиком. Это может изменить версию платформы, порт агента, диапазон рабочих процессов или каталог кластера. Добавлять нужно только -debug к собственной проверенной конфигурации.

Шаг 5. Запустить службу

После изменения запустите службу и убедитесь, что:

  • служба перешла в состояние «Выполняется»;
  • в журнале событий Windows нет ошибок запуска;
  • кластер доступен в консоли администрирования;
  • рабочие процессы rphost создаются;
  • тестовый клиент может подключиться к информационной базе.

Как включить серверную отладку 1С в Linux

В Linux параметр -debug добавляют в конфигурацию запуска службы агента сервера 1С. Конкретное расположение файла и имя службы зависят от версии платформы, дистрибутива и способа установки.

Общий порядок действий

  1. Определить имя службы агента сервера 1С.
  2. Посмотреть фактическую команду запуска.
  3. Сохранить текущую конфигурацию.
  4. Добавить параметр -debug.
  5. Перечитать конфигурацию менеджера служб.
  6. Перезапустить службу.
  7. Проверить статус и журнал запуска.

Для просмотра подходящих служб на системе с systemd можно использовать:

Терминал Linux
systemctl list-units --type=service | grep -i 1c

После определения точного имени проверьте текущий статус:

Терминал Linux
systemctl status ИМЯ_СЛУЖБЫ

Перед редактированием unit-файла или связанного файла окружения обязательно сделайте его копию. Не используйте имя службы из примера без проверки на своем сервере.

Важно: на разных версиях платформы и в разных дистрибутивах параметры могут храниться в unit-файле, файле окружения или скрипте запуска. Сначала определите фактическую команду запуска через systemctl cat ИМЯ_СЛУЖБЫ.

После изменения конфигурации для службы под управлением systemd обычно требуется выполнить:

Терминал Linux
systemctl daemon-reload
systemctl restart ИМЯ_СЛУЖБЫ
systemctl status ИМЯ_СЛУЖБЫ

Команды перезапуска прерывают активные соединения с кластером. Выполняйте их только после завершения пользовательских сеансов и фоновых операций.

Как подключить серверные предметы отладки

После запуска кластера в режиме отладки откройте информационную базу в Конфигураторе и настройте подключение к предметам отладки.

Выбор протокола отладки

Откройте параметры Конфигуратора и найдите настройки отладки. Доступный вариант зависит от версии платформы и архитектуры подключения.

ПротоколКогда используетсяЧто учитывать
TCPПрямое сетевое взаимодействие с сервером отладки.Между компьютером разработчика и сервером должны быть доступны необходимые сетевые соединения.
HTTPИспользуется в поддерживаемых версиях и сценариях, включая отдельные варианты удаленной отладки.Нужно корректно указать адрес сервера отладки и проверить доступность URL.

Не выбирайте протокол только по названию. Он должен соответствовать версии платформы, конфигурации сервера и настройкам отладчика.

Подключение предметов отладки

  1. Откройте меню Отладка.
  2. Выберите команду подключения предметов отладки.
  3. Обновите список доступных предметов.
  4. Найдите серверные предметы нужной информационной базы.
  5. Включите автоматическое подключение требуемых типов либо подключите предмет вручную.

В зависимости от выполняемого кода в списке могут появляться серверные сеансы, фоновые задания, регламентные задания и другие предметы отладки.

Как проверить, что серверная отладка работает

Проверка точки останова

  1. Откройте серверный модуль, код которого точно выполняется в проверяемом сценарии.
  2. Установите точку останова на исполняемой строке.
  3. Подключите серверные предметы отладки.
  4. Запустите действие, вызывающее этот серверный код.
  5. Убедитесь, что Конфигуратор остановил выполнение на заданной строке.

Для первой проверки лучше выбирать простой управляемый сценарий, а не редкое фоновое задание. Например, серверную процедуру, вызываемую из тестовой формы.

Что проверить, если точка останова не сработала

СимптомВероятная причинаЧто проверить
В списке нет серверных предметовКластер запущен без режима отладки или выбран неверный сервер.Параметр -debug, версию платформы, адрес сервера и перезапуск службы.
Предмет появился, но точка не срабатываетВыполняется другой модуль, другая версия конфигурации или другой серверный процесс.Место выполнения кода, обновление конфигурации базы и подключенный предмет.
Работает клиентская, но не серверная отладкаЗапущен клиентский сеанс отладки, но кластер не переведен в режим отладки.Параметры запуска агента сервера.
Не удается подключиться к серверу отладкиСетевая недоступность, неверный протокол или адрес.Маршрут, межсетевой экран, URL или настройки TCP/HTTP.
Не отлаживается фоновое заданиеПредмет появился позже или не включено автоматическое подключение.Список типов предметов и момент запуска задания.
После изменения служба не запускаетсяПовреждена строка запуска или изменены существующие параметры.Сравнить строку с сохраненной копией и проверить журнал событий.

Почему сервер отладки не видит нужный сеанс

Если серверные предметы не появляются, последовательно проверьте:

  • совпадает ли версия Конфигуратора с версией сервера;
  • перезапускалась ли служба после добавления -debug;
  • изменена ли служба нужного экземпляра платформы;
  • подключен ли Конфигуратор к нужной информационной базе;
  • правильно ли выбран протокол отладки;
  • доступен ли сервер отладки по сети;
  • выполнялся ли серверный код после открытия окна подключения;
  • не подключен ли разработчик к другому кластеру или тестовой базе.
Практика IPWAY: одна из частых причин — несколько установленных версий платформы. Администратор добавляет -debug в службу старой версии, а рабочий кластер продолжает запускаться другой службой без режима отладки.

Безопасная работа с серверной отладкой

Когда не стоит включать отладку на рабочем сервере

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

По возможности используйте отдельный тестовый контур, если:

  • ошибку можно воспроизвести на копии базы;
  • требуется долго исследовать выполнение кода;
  • нужно ставить точки останова в часто вызываемых процедурах;
  • на сервере одновременно работает много пользователей;
  • остановка выполнения может заблокировать критичный бизнес-процесс;
  • проверяется обмен, интеграция или регламентное задание.
Важно: точка останова в серверном коде может задержать выполнение операции, занятой транзакции или фонового задания. На продуктивной базе это способно повлиять не только на разработчика, но и на других пользователей.

Как отключить серверную отладку

После завершения диагностики рекомендуется вернуть исходные параметры запуска.

  1. Завершите отладочные сеансы.
  2. Предупредите пользователей о повторном перезапуске.
  3. Остановите службу агента сервера.
  4. Удалите только добавленный параметр -debug.
  5. Не изменяйте остальные параметры строки запуска.
  6. Запустите службу.
  7. Проверьте доступность кластера и информационных баз.
Что важно запомнить: сохраненная перед настройкой строка запуска — основной ориентир при возврате конфигурации. Не восстанавливайте параметры по памяти или по примеру из другой установки.

Заключение

Чтобы включить серверную отладку в 1С 8.3, нужно запустить агент сервера с параметром -debug, перезапустить службу и подключить серверные предметы отладки в Конфигураторе. Одна только точка останова не позволит отлаживать код, если кластер работает в обычном режиме.

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

На рабочем сервере отладку лучше включать только на время диагностики. После завершения работ параметр -debug нужно удалить и повторно проверить штатную работу кластера.

Что почитать дальше

Если вы администрируете серверную инфраструктуру 1С, полезно также посмотреть связанные материалы:

Когда стоит обратиться к специалистам

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

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

IPWAY помогает с настройкой и сопровождением серверов 1С, диагностикой служб кластера, обновлением платформы, переносом баз и организацией тестового контура. Это позволяет исследовать ошибку без необоснованного риска для рабочей среды.

Кратко

  • Для отладки серверного кода кластер 1С должен быть запущен в режиме отладки.
  • Режим включается параметром -debug в строке запуска агента сервера.
  • После изменения параметров службу нужно перезапустить.
  • Перед перезапуском необходимо завершить активные сеансы и фоновые задания.
  • В Конфигураторе нужно выбрать протокол и подключить серверные предметы отладки.
  • Если предметы не появляются, проверьте версию платформы, службу, сеть и выбранный кластер.
  • Примеры строк запуска нельзя копировать без проверки собственных путей и портов.
  • После диагностики параметр -debug следует удалить.

Мы используем файлы cookie и сервис веб-аналитики Яндекс Метрика для улучшения работы сайта. Оставаясь на сайте, вы соглашаетесь с Политикой конфиденциальности.