Отладка серверных процедур (1Cv82) — различия между версиями
(Новая страница: «Категория:Программирование в 1Cv82 ==Отладка серверных процедур== Для того чтобы можно бы...») |
м |
||
Строка 1: | Строка 1: | ||
− | [[Категория:Программирование в | + | [[Категория:Программирование в 1Cv8]] |
==Отладка серверных процедур== | ==Отладка серверных процедур== |
Текущая версия на 16:43, 7 июля 2016
Отладка серверных процедур
Для того чтобы можно было отлаживать серверные процедуры надо установить флаги в форме "Сервис->Параметры" конфигуратора:
Отладка на сервере приложений
Это описано в документации:
Книга «1С:Предприятие 8.1. Конфигурирование и администрирование»
Глава 18. Инструменты конфигурирования
Отладчик и замеры производительности
"Отладка кода на сервере
Для установки отладочного режима следует запустить сервер 1С:Предприятия с ключом командной строки /Debug (ragent.exe /debug)."
Ключи запуска агента сервера описаны в книге:
«1С:Предприятие 8.1. Клиент-сервер. Особенности установки и использования»
"Запуск агента сервера как сервиса
Если при установке кластера серверов был выбран вариант запуска агента центрального сервера как сервиса, то данный сервис будет запущен автоматически, в процессе установки и также будет запускаться при старте операционной системы.
Если агент центрального сервера был установлен как приложение, то существует возможность зарегистрировать сервис вручную и затем осуществить его запуск.
Регистрация сервиса выполняется следующей командой:
ragent.exe -instsrvc -usr <пользователь> -pwd <пароль> -port <порт> -range <диапазоны> -seclev <уровень> -debug | -rmsrvc | -start | -stop-instsrvc – регистрация агента кластера как сервиса Windows. Если ragent.exe запущен с этим ключом, то он выполняет регистрацию в списке сервисов Windows и завершается. Не совместим с ключами -srvc, -rmsrvc;
-usr <имя пользователя>
-pwd <пароль пользователя> – имя и пароль пользователя Windows, от имени которого должен запускаться ragent.exe как сервис Windows. Могут использоваться только совместно с ключом -instsrvc при регистрации ragent.exe как сервиса Windows;
-port <порт> – номер главного порта агента кластера. Этот порт используется консолью кластера для обращения к центральному серверу. Порт агента кластера также указывается в качестве IP порта рабочего сервера;
-range <диапазоны> – диапазоны IP портов для динамического выбора. Из них выбираются служебные порты процессов кластера при невозможности их выбора из настроек соответствующего рабочего сервера. По умолчанию: 1560-1591. Примеры значений <диапазоны>: «45:49», «45:67,70:72,77:90»;
-seclev <уровень> – уровень безопасности процесса агента кластера. Определяет уровень безопасности соединений, устанавливаемых с процессом ragent.exe. <уровень> может принимать значения: 0 (по умолчанию) соединения не защищенные, 1 – защищенные соединения только на время выполнения аутентификации пользователей, 2 – постоянно защищенные соединения.;
-rmsrvc – отмена регистрации агента кластера как сервиса Windows. Если ragent.exe запущен с этим ключом, то он отменяет свою регистрацию в списке сервисов Windows и завершается. Не совместим с ключами -srvc, -daemon, -instsrvc.
-start — запустить ragent.exe, зарегистрированный как сервис Windows. Выполняет запуск ragent.exe, ранее зарегистрированного как сервис Windows, после чего завершается;
-stop — остановить ragent.exe, зарегистрированный и запущенный как сервис Windows. Выполняет остановку ragent.exe, ранее зарегистрированного и запущенного как сервис Windows, после чего завершается;
-debug — запуск кластера серверов в режиме отладки конфигураций. "
Таким образом если сервер 1С:Предприятия был запущен как сервис и по каким-то причинам в отладочном режиме он так же должен быть запущен как сервис, необходимо сначала отменить регистрацию сервиса (ключ -rmsrvc), а затем заново зарегистрировать сервис с ключом -debug.
Очевидно, что аналогичного эффекта можно добиться и другими способами, например непосредственной правкой реестра Windows. Для этого, по всей вероятности, следует обратиться к документации по Windows.
Источник: http://partners.v8.1c.ru/forum/thread.jsp?id=477311
Срабатывает только при установке ключа "-debug" в реестре. Во всех остальных случаях почему-то не работает.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.1 Server Agent] "ImagePath"=
было "F:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "F:\Program Files\1cv81\server"
поставили "F:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d "F:\Program Files\1cv81\server"
Источник: http://partners.v8.1c.ru/forum/thread.jsp?id=477311#477311
Для остановки сервера, установленного как сервис, можно:
- воспользоваться либо оснасткой операционной системы или
- выполнить команду «Остановка сервера 1С:Предприятия», которой соответствует командная строка
"C:\Program Files\1cv81\bin\ragent.exe" –stop
Для регистрации сервиса в режиме отладки в состав параметров, передаваемых при регистрации, необходимо добавить параметр –debug и вновь зарегистрировать сервис. Например, командная строка регистрации сервиса может выглядеть следующим образом:
"C:\Program Files\1cv81\bin\ragent.exe" -instsrvc -agent -usr ".\USR1CV81" -pwd 1234567 -debug -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv81\server".Внимание! При необходимости отключить возможность отладки, сервис опять придется перерегистрировать, но уже без ключа –debug.
Источник: http://partners.v8.1c.ru/forum/thread.jsp?id=477311&partt458204=2
Кроме того надо подключить "предмет отладки" "Web-сервис" (Отладка->Подключение->Предмет отладки):