Не работает отладка сервера 1с

Содержание
  1. Что делать если не работает отладка на сервере 1С?
  2. Отладка на сервере для платформы 1С 8.1
  3. Если не работает отладка в 1С 8.2 и 8.3
  4. Как включить отладку на сервере 1С
  5. Включаем отладку на сервере 1С в Windows
  6. Включаем отладку по протоколу HTTP на сервере
  7. Включаем отладку на сервере 1С в Ubuntu
  8. Что делать, если не работает отладка на сервере 1С
  9. Куда смотрим и что проверяем
  10. Не работает отладка 1С
  11. 1. В списке предметов отладки не видны серверные сеансы
  12. 2. В списке предметов отладки не видны ни клиентские ни серверные сеансы.
  13. 3. В списке предметов отладки не видны клиентские сеансы.
  14. 4. Предмет отладки виден в конфигураторе и подключается, но точка останова все равно не срабатывает на строке кода.
  15. 5. Программный код выполняется в сеансе фонового задания.
  16. 6. Программный код выполняется в сеансе web-сервиса или http-сервиса.
  17. Подводим итоги
  18. Не работает отладка http сервисов

Что делать если не работает отладка на сервере 1С?

По умолчанию, при использовании клиент-серверного режима работы 1С-предприятия никакие серверные функции и процедуры не будут поддаваться пошаговой отладке. Система будет выполнять их «на сервере 1С 8.3″, такие процедуры не видны для клиентской машины.

Для включения режима отладки 1С в режиме клиент-сервер достаточно последовать простым инструкциям для каждой версии 1С:

Отладка на сервере для платформы 1С 8.1

Чтобы точки останова отрабатывали в серверных процедурах, необходимо:

  1. Остановить службу 1C Enterprise Server Agent.
  2. Запустить редактор системного реестра. Чтобы открыть редактор реестра, необходимо нажать Windows + R (или Пуск-Выполнить) и ввести в командную строку regedit.
  3. Найти ветку реестра [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent].
  4. Скорректировать атрибут «ImagePath»= , добавив «-debug».
  5. Запустить службу 1C Enterprise Server Agent.

Пример:
До включения:
«C:\Program Files\1cv81\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv81\server»
После включения отладки:
«C:\Program Files\1cv81\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d «C:\Program Files\1cv81\server»

Если не работает отладка в 1С 8.2 и 8.3

  1. Остановить службу 1C:Enterprise 8.2 Server Agent.
  2. Запустить редактор системного реестра. Чтобы открыть редактор реестра, необходимо нажать Windows + R (или Пуск-Выполнить) и ввести в командную строку regedit.
  3. Найти ветку реестра [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\1C:Enterprise 8.2 Server Agent\].
  4. Находим свойство «ImagePath»= , добавляем в строку «-debug».
  5. Записываем и запускаем службу.

Пример:
До включения:
«»C:\Program Files (x86)\1cv82\8.2.18.109\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv82\srvinfo»»
После включения отладки:
«»C:\Program Files (x86)\1cv82\8.2.18.109\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files (x86)\1cv82\srvinfo» -debug»

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

Читайте также:  Не могу настроить роутер d link dsl 2640u

Другие статьи по 1С:

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

Источник

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

Эта статья рассказывает о том, как включить отладку на сервере 1С 8.1, 8.2 и 8.3 в операционных системах Windows и Ubuntu.

Кроме этого отмечу, что эта статья входит в небольшую серию статей об отладке в 1С:

Включаем отладку на сервере 1С в Windows

Запускаем редактор реестра, выполнив команду regedit (при помощи Win+R или Пуск->Выполнить).

Запускаем Regedit

Затем, в редакторе реестра открываем:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\1C:Enterprise 8.3 Server Agent (x86-64)

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

Редактор реестра

После этого в параметре ImagePath (подчеркнут на картинке сверху) добавляем -debug, например было:

«C:\Program Files\1cv8\8.3.8.2197\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv8\srvinfo»

«C:\Program Files\1cv8\8.3.8.2197\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv8\srvinfo» -debug

Изменяем ImagePath

И наконец, перезапускаем службу «Агент сервера 1С:Предприятия 8.3 (x86-64)» (названием может отличаться в зависимости от версии сервера).

Перезапускаем агент сервера 1С

Готово — теперь отладка на сервере 1С должна заработать.

Включаем отладку по протоколу HTTP на сервере

Описанные выше операции позволяют включить отладку на сервере по протоколу TCP/IP (это вариант по умолчанию) и в подавляющем большинстве случаев это как раз то, что нужно.

Если же требуется отладка по протоколу HTTP, то нужно сделать все тоже самое, только параметр ImagePath в реестре будет выглядеть по другому.

Если сервер отладки будет запускаться кластером серверов, то к ImagePath нужно добавить -http, например:

«C:\Program Files\1cv8\8.3.13.1513\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv8\srvinfo» -debug -http

Если используется удаленный сервер отладки, то нужно дополнительно указать адрес этого сервера, порт и пароль (если требуется) добавляя соответствующие параметры — -debugServerAddr, -debugServerPort и -debugServerPwd, например:

«C:\Program Files\1cv8\8.3.13.1513\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv8\srvinfo» -debug -http -debugServerAddr 192.168.0.170 -debugServerPort 4000

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

Подробнее об отладке по протоколу HTTP и о сервере отладки можно прочитать в следующей статье серии.

Включаем отладку на сервере 1С в Ubuntu

В начале становим сервер:

sudo service srv1cv83 stop

После этого открываем от имени суперпользователя файл /etc/init.d/srv1cv83 и находим в нем строку:

И приводим ее к такому виду:

Затем запускаем сервер вновь:

sudo service srv1cv83 start

В конфигураторе на клиентской машине идем в «Параметры» -> «Запуск 1С:Предприятия» -> «Дополнительные» и включаем два пункта:

  • «Устанавливать режим разрешения отладки»
  • «Начинать отладку при запуске»

Включение режима отладки

О том, как установить сервер 1С на Ubuntu 16.04/18.04 можно прочитать в этой статье.

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

Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Что делать, если не работает отладка на сервере 1С

Вопрос: «Что делать, если стоят точки останова, при этом платформа выполняет проведение без остановки? Куда смотреть?».

Причина: по умолчанию отладка на сервере выключена.

Куда смотрим и что проверяем

1. Добавьте ключ «-debug» в строке запуска службы «Агент сервера 1С:Предприятия 8.3».

Например, по умолчанию строка такая (условно):

«C:\Program Files\1cv8\8.x.xx.xxxx\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv8\srvinfo»

Запуск с опцией отладки:

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

Условия запуска меняются в реестре — через строковый параметр «ImagePath». Раздел находится здесь в зависимости от разрядности:

  • HKLM\SYSTEM\CurrentControlSet\services\1C:Enterprise 8.3 Server Agent
  • HKLM\SYSTEM\CurrentControlSet\services\1C:Enterprise 8.3 Server Agent (x86-64)

Для активации потребуется рестарт службы либо перезагрузка сервера.

2. В меню «Сервис — Параметры — Запуск 1С:Предприятия — Дополнительные» включите опции:

  • «Устанавливать режим разрешения отладки»;
  • «Начинать отладку при запуске»

3. Через Конфигуратор откройте «Отладка — Подключение» — какие сеансы у вас показываются в предметах отладки; поставьте настройки в окне «Автоматическое подключение».

Например, автоматически подключать «Клиентские и внешние соединения на сервере» или «Фоновые задания» в зависимости от задачи.

4. При использовании отладки по протоколу TCP/IP возможно потребуется настройка правил брандмауэра.

Проверьте эти моменты и, скорее всего, отладка в серверном режиме у вас заработает.

Вам надо по-другому работать с наличкой. Кого прижмут налоговики и банки? Забирайте запись, пожалуй, лучшего вебинара «Клерка»: «Как теперь будут контролировать наличку. 115-ФЗ в 2021 году ».

Только до завтра можно забрать запись со скидкой 20%. Программу вебинара смотрите здесь

Источник

Не работает отладка 1С

Разберем основные случаи когда и почему не работает отладка 1С.

1. В списке предметов отладки не видны серверные сеансы

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

2. В списке предметов отладки не видны ни клиентские ни серверные сеансы.

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

Если и после этого список пустой, то нужно вбить вместо имени IP-адрес удалённого компьютера. В случае если это помогло, то рекомендуется прописать привязки имен и IP-адресов компьютеров в файле hosts. Если и это не помогло то необходимо проверить настройку фаервола, разрешены ли на сервере 1С (или удаленном клиенте) входящие соединения с компьютера где запущен отладчик на порты 1560-1591.

3. В списке предметов отладки не видны клиентские сеансы.

Причина как правил в том, что не разрешена отладка клиентского приложения. Для разрешения отладки клиентского сеанса достаточно в настройках программы в режиме 1С Предприятие указать в параметре «Отладка в текущем сеансе» — Разрешена TCP/IP.

4. Предмет отладки виден в конфигураторе и подключается, но точка останова все равно не срабатывает на строке кода.

Данная проблема актуальна при отладке по протоколу TCP. Причина в том что отладчик не может принимать входящие соединение из-за того что брандмауер или фаервол блокируют сетевое взаимодействие между отладчиком и предметом отладки. Тут нужно понимать, что отладчик не только устанавливает исходящее соединение с предметом отладки, но также должен иметь возможность принимать входящее соединение. Проблема решается отключением фаервола на компьютере где запущен отладчик либо открытием входящих соединений на портах 1560-1591 для исполняемого файла 1cv8.exe.

5. Программный код выполняется в сеансе фонового задания.

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

6. Программный код выполняется в сеансе web-сервиса или http-сервиса.

Как правило сеанс подключения к web-сервису http-сервису существует непродолжительное время и вручную подключиться к нему проблематично. Здесь так же достаточно включить автоматическое подключение к таким сеансам и отладчик сам будет находить и подключать предметы отладки, ваша задача только поставить точку останова в коде.

Подводим итоги

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

Напоследок стоит отметить, что как правило отладка производиться на тестовом сервере 1С, который запускается на портах отличных от типового диапазона 1560-1561. Поэтому, все изложенное выше в части номеров портов, следует рассматривать в контексте ваших реально используемых диапазонов портов.

Источник

Не работает отладка http сервисов

На сервере отладка включена,
http сервис опубликован,
автоматическое подключение к HTTP-сервисам на сервере — галка стоит
Приходит ответ, но отладки нет.
В адрес отладчика писал и рабочий компьютер, и локал хост, запускал напрямую с сервера — тщетно.

В предметах отладки виден http сервис, но перехода в модуль http сервиса не происходит.

Может есть ещё где какая настройка?

Сервер Centos 7

(1)
в windows для отладки нужно у службы в конце на писать -debug
например
«C:\Program Files\1cv8\8.3.12.1529\bin\ragent.exe» -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d «C:\Program Files\1cv8\srvinfo» -debug

Я это делают через реестр windows.

Если в отладочный режим необходимо перевести сервер «1С:Предприятия» работающего в режиме «демона» в ОС Centos 7, то необходимо выполнить следующие операции:
1. Остановить сервер «1С:Предприятия».
systemctl stop srv1cv83.service
2. В конфигурационном файле /etc/sysconfig/srv1cv83 установить значение параметра SRV1CV8_DEBUG в значение 1.
SRV1CV8_DEBUG=1
3. Сохранить конфигурационный файл.
4. Запустить сервер «1С:Предприятия».
systemctl start srv1cv83.service

Возможная проблема:
Если после изменения настроек и перезапуска сервера «1С:Предприятия» изменений не произошло, т.е. отладка не включилась, то надо проверить наличие в строке запуска параметра “-debug”. Например, посредством ввода команды:
ps faux | grep 1C
Если в строках вывода этой команды нет параметра “-debug”, то отладка не включена.
Также стоит обратить внимание на время старта процессов сервера «1С:Предприятия». Если время старта процессов отличается от времени, когда была введена команда “systemctl start srv1cv83.service”, то это значит что данные процессы не управляются посредством systemd.
Решение:
1. Остановить сервер «1С:Предприятия».
systemctl stop srv1cv83.service
2. Получить список процессов сервера «1С:Предприятия».
ps faux | grep 1C
3. Завершить все процессы сервера «1С:Предприятия».
kill -9

4. Запустить сервер «1С:Предприятия».
systemctl start srv1cv83.service
5. Проверить наличие параметра “-debug” в процессах сервера «1С:Предприятия».
ps faux | grep 1C

(15) Отладка на сервере работает,

(18) У сервиса 2 метода
Get и Post, отладка не заходит не в один из них, значение возвращает из Post

Может Скрины прояснят ситуацию

В публикации поставил галку публиковать Http сервисы по умолчанию, тоже не сработало.

В vrd файле убрал у сервера указание порта, тоже не то

Источник

Оцените статью