Отладка 1с linux сервера

Отладка на сервере 1С на Linux

Включение отладки на Linux для сервера 1С выполняется как и в Windows с помощью ключа -debug в строке запуска службы. Различие только в способе указания данного ключа. Как это делается в Windows можно посмотреть здесь. О том как запустить отладку 1С по протоколу TCP или HTTP на Linux читаем ниже.

Настройка отладки по протоколу TCP

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

Запуск сервера 1С с ключом -debug нужен только для отладки серверных сеансов. Так же не стоит запускать сервер production в режиме отладки, так как это снижает его производительность.

Для запуска агента сервера 1С с ключом -debug надо выполнить следующие шаги:

1. Зайдем на сервер 1С под пользователем root:

Настройка отладки по протоколу HTTP

Если при отладка по tcp ваш компьютер (отладчик) и предмет отладки (например серверный сеанс 1С) обмениваются по сети напрямую, то отладка в 1С по протоколу http организована по трех-звеньевой схеме. Дополнительно запускается сервер отладки (процесс dbgs), который становится посредником между отладчиком и предметом отладки. Теперь все потоки информации идут только через исходящие соединения к серверу отладки. Данный вариант позволяет вести отладку в условиях когда отладчик и предмет отладки разделяют маршрутизаторы, сетевые экраны с NAT и фаерволы блокирующие входящие TCP соединения от предмета отладки к отладчику.

Включение HTTP-отладки на сервере 1C

Поверка работы HTTP сервера отладки

Должен быть запущен процесс сервера отладки dbgs, а также у процесса ragent должен быть отображены ключи запуска -debug и -http .

Процесс сервера http отладки 1сВ случае, если запуск сервера отладки осуществлялся на порту отличном от порта по умолчанию, то у процесса ragent и dbgs также должен присутствовать ключ с номером порта как на картинке ниже: Порты сервера http отладки 1с

Настройка параметров базы данных для подключения к серверу отладки по HTTP

  1. Заходим в главном меню Сервис -> Параметры. Там ищем закладку «Отладка».
  2. На закладке «Отладка» делаем настройки:
  • Протокол отладки — выбираем параметр «Отладка по протоколу HTTP»
  • Сервер отладки у нас запущен на той же машине что и менеджер кластера, поэтому выбираем «Использовать сервер отладки кластера»
  • Если конфигуратор запущен для целевой базы, то ставим переключатель на «Имя текущей информационной базы». В нашем случае база с именем zup_test_1. Если хотим подключиться для отладки к другой базе, то ставим переключатель на «Использовать указано имя текущей информационной базы» и вводим имя целевой базы как оно указано в реестре кластера.
  • Вводим пароль доступа к базе, если хотим подключиться к другой базе, не той что открыта в конфигураторе.
Читайте также:  Виды драйверов для linux

Настройка отладки HTTP в конфигураторе 1С

3. Нажимаем кнопку «Перезапустить» чтобы применить настройки.

Настройка клиентского приложения для отладки

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

1. В режиме 1С Предприятие заходим в меню Настройки -> Параметры

Меню параметры 1С

2. В окне для параметра «Отладка в текущем сеансе» выбираем вариант «Разрешена» с нужным протоколом.

Настройка отладки в клиенте 1С

Если выбираем протокол HTTP, то в поле «Сервер отладки» так же указываем имя компьютера и порт на котором запущен сервер отладки HTTP.

Параметры отладки клиента по HTTP

Проверка работы отладки

В конфигураторе в главном меню выбираем пункт Отладка -> Подключение. В окне должны отобразиться доступные предметы отладки.

Выбираем сеанс для отладки, нажимаем кнопку «Подключить». Закрываем окно, ставим точку останова в коде и запускаем на выполнение данный код. Если отладчик останавливается на точке останова то миссия по настройке отладки выполнена.

Источник

Включение отладки на сервере 1С на ОС Linux

При установке сервера 1С на ОС Linux может возникнуть проблема, что там необходимо включить отладку. По понятным причинам делается это совершенно не так, как на ОС Windows.

Данный пример приведен для дистрибутива Debian 9. В комплект дистрибутивов Debian входят хоть и не самые последние версии приложений, но зато подбираются самые стабильные и надежные релизы. Работать будем через консоль через программу putty. В качестве текстового редактора я предпочитаю редактор nano, он достаточно прост.

Для включения отладки необходимо отредактировать файл /etc/init.d/srv1cv83. Открывать необходимо с полными правами, для получения полных прав используется команда:

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

Откроется окно редактора. Нажимаем сочетание клавиш Ctrl+W, появляется строка поиска, набираем

Отладка Linux 1С

Отладка Linux 1С

Для сохранения изменений нажимаем Ctrl+X, набираем Y и нажимаем Enter. После этого необходимо перезагрузить службу

services srv1cv83 restart

Если все сделали правильно, то сервер будет перезапущен, и будет включена возможность отладки.

Читайте также:  Linux ftp server iso

Источник

Отладка на сервере линукс

Коллеги, добрый день.
Не получается включить отладку на линуксе.
5.15.0-48-generic #54-Ubuntu SMP Fri Aug 26 13:26:29 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
8.3.21.1484
Делал так:
https://its.1c.ru/db/v8321doc#bookmark:cs:TI000000123

cat /opt/1cv8/x86_64/8.3.21.1484/srv1cv8-8.3.21.1484\@.service
[Unit]
Description=1C:Enterprise Server 8.3 (8.3.21.1484) (%I)
Requires=network.target

[Service]
# 1C:Enterprise server keytab file.
# default — usr1cv83.keytab file in 1C:Enterprise server
# installation directory
#
Environment=SRV1CV8_KEYTAB=/opt/1cv8/x86_64/8.3.21.1484/usr1cv8.keytab

# Cluster agent main port
Environment=SRV1CV8_PORT=1540

# Cluster main port for default cluster.
# This port is used by the cluster agent to address
# the central server. Cluster port is also specified
# as the IP port of the working server.
Environment=SRV1CV8_REGPORT=1541

# Port range for connection pool
# example values:
# 45:49
# 45:67,70:72,77:90
Environment=SRV1CV8_RANGE=1560:1591

# 1C:Enterprise server configuration debug mode
# empty value — off
# -debug — on
Environment=SRV1CV8_DEBUG=-debug

В документации указано, что настраивать надо так:

Для того, чтобы отредактировать параметры какого-либо экземпляра кластера серверов, необходимо использовать следующую команду:

systemctl edit srv1cv8-A.B.C.D@instanceName

Когда редактирую таким образом, при повторном запуске systemctl edit srv1cv8-A.B.C.D@instanceName изменения не остаются.

Включение отладки на debian 10 и сервере 1с 8.3.18.1363

Правим файл /etc/init.d/srv1cv83

Закомментированного параметра SRV1CV8_DEBUG=1 нет, добавляем в начале файла.

В добавляем отладку по http
[ «x$SRV1CV8_DEBUG» == «x1″ ] && cmdline=»$cmdline -debug -http»

обновляем настройки сервисов
systemctl daemon-reload

Перезапускаем кластер
systemctl restart ras

или перезапускаем сервер
reboot

Включаем от отладку в конфиураторе

Если нужно отключить отладку — комментируем (или удаляем) первую строку, обновляем сервисы и рестартим сервер.

Вопрос решен включением отладки по http:

cat /opt/1cv8/x86_64/8.3.21.1484/srv1cv8-8.3.21.1484\@.service
[Unit]
Description=1C:Enterprise Server 8.3 (8.3.21.1484) (%I)
Requires=network.target

[Service]
# 1C:Enterprise server keytab file.
# default — usr1cv83.keytab file in 1C:Enterprise server
# installation directory
#
Environment=SRV1CV8_KEYTAB=/opt/1cv8/x86_64/8.3.21.1484/usr1cv8.keytab

# Cluster agent main port
Environment=SRV1CV8_PORT=1540

# Cluster main port for default cluster.
# This port is used by the cluster agent to address
# the central server. Cluster port is also specified
# as the IP port of the working server.
Environment=SRV1CV8_REGPORT=1541

# Port range for connection pool
# example values:
# 45:49
# 45:67,70:72,77:90
Environment=SRV1CV8_RANGE=1560:1591

# 1C:Enterprise server configuration debug mode
# empty value — off
# -debug — on
Environment=SRV1CV8_DEBUG=-debug-http

«.
# 1C:Enterprise server configuration debug mode
# empty value — off
# -debug — on
Environment=SRV1CV8_DEBUG=-debug
. »
Конфиг верный. У меня на астре служба не запускалась, после изменения конфига. А после ребута запустилась.

Если редактировал через nano то там можно при сохранении, сохраненить не в тот файл. Попробуй из mc отредактировать.
«Когда редактирую таким образом, при повторном запуске systemctl edit srv1cv8-A.B.C.D@instanceName изменения не остаются.

Источник

1С. Отладка на сервере 1С:Предприятие

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

Читайте также:  Эмулятор xbox 360 linux

Задача

Есть два сервера, один по управлением ОС семейства Windows, другой под управлением ОС Debian. Необходимо на обоих включить отладку на сервере.

Включение отладки в Windows

Первым делом зайдем в службы и остановим службу сервера 1С:Предприятие.

Далее необходимо открыть редактор реестра. Это можно сделать нажав сочетание клавиш Win+R и введя в появившемся окне regedit. В редакторе реестра необходимо развернуть дерево до ветки HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\1C:Enterprise 8.3 Server Agent.

1С. Отладка на сервере 1С:Предприятие

В правой части редактора отобразятся свойства текущего раздела, нам необходимо свойство ImagePath. Его значение должно быть примерно таким:

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

Нам необходимо добавить параметр включения отладки -debug. Многие добавляют его в самый конец, но я предпочитаю вставлять перед параметром -d

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

Теперь остается сохранить изменения и запустить службу, отладка должна работать.

Включение отладки в Linux

Как и для Windows остановим службу сервера 1С

Настройки с которыми запускается сервер хранятся в файле /etc/init.d/srv1cv83, открываем для редактирования

Находим раздел параметров отладки и для параметра SRV1CV8_DEBUG устанавливаем значение 1. В итоге получаем следующее:

# 1C:Enterprise server configuration debug mode # 0 - default - off # 1 - on # SRV1CV8_DEBUG=1

Сохраняем файл и запускаем службу

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

1С. Отладка на сервере 1С:Предприятие

В итоге отладка работает, и все операции заняли не более 10 минут.

Источник

Как запустить сервер 8.3.18хх и выше в режиме отладки в Linux.

Для того, чтобы на сервере была доступна отладка, необходимо запустить его в ключом –debug. Для этого сначала остановим сервер «1С:Предприятие»:

Не редактируйте параметры запуска сервера в процессе его работы, это может привести к ошибкам при его перезапуске.

Маленькое отступление: в последних версиях 1С по инструкции после установки сервера, необходимо скопировать файлы srv1cv83 и srv1cv83.conf из папки /opt/1cv8/x86_64/ в /etc/rc.d/init.d и /etc/sysconfig соответственно.

Этот момент приводит к тому, что режим «debug» может не включаться. Поэтому переименовываем файл конфигурации запуска /etc/sysconfig/srv1cv83.conf в /etc/sysconfig/srv1cv83:

mv /etc/sysconfig/srv1cv83.conf /etc/sysconfig/srv1cv83

Теперь необходимо отредактировать параметры его запуска в конфигурационном файле srv1cv83 (в данном примере с использованием редактора vim):

Находим в редактируемом файле строку SRV1CV8_DEBUG= , убираем в начале этой строки символ комментария # и устанавливаем значение переменной SRV1CV8_DEBUG в 1:SRV1CV8_DEBUG=1

Сохраняем изменения и выходим из файла.

Перезапускаем сервер «1С:Предприятия 8»:

usr1cv8 6429 0.5 0.0 213556 55552 ? Ssl 07:37 1:14 /opt/1cv8/x86_64/8.3.18.1334/ragent -daemon -debug

usr1cv8 6429 1 0 07:37 ? 00:01:14 /opt/1cv8/x86_64/8.3.18.1334/ragent -daemon -debug

Источник

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