Комп'ютери та сучасні гаджети

Завдання розробника 1С полягає у написанні коду, а й у відстеження і виправленні помилок, побудові оптимального алгоритму виконання команд і оптимізації швидкості роботи, тобто налагодження. Зробити це без використання функціоналу вбудованого налагоджувача серверних процедур важко.

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

Увімкнення режиму налагодження на сервері для платформи 1С версії 8.2 і вище

Алгоритм увімкнення налагодження досить простий. Він не передбачає наявності глибоких знань з архітектури операційних систем та адміністрування 1С. При цьому все ж таки слід бути дуже уважним, адже роботи з налагодження виконуються безпосередньо на сервері та з правами адміністратора. Тому, якщо не маєте досконалих знань, суворо дотримуйтесь алгоритму дій без імпровізацій:

  • Зупиніть службу «Агент сервера 1С:Підприємства» через Менеджер сервера. Якщо налаштування проходить на робочому сервері, варто потурбуватися заздалегідь про відсутність користувачів 1С в базі;
  • Запустіть редактор реєстру системи шляхом натискання «Пуск»-«Виконати» або клавіші «Win»+«R». У вікні ввести рядок «regedit»;
  • У реєстрі необхідно знайти пункт;

  • Серед параметрів знайти "ImagePath" і змінити його, додавши до існуючого значення через пробіл в кінці "-debug";
  • Через Менеджер сервера запустити службу, яку зупиняли – «Агент сервера 1С:Підприємства».

Увімкнення режиму налагодження на сервері для версії 1С 8.1

Якщо необхідно включити режим налагодження на платформі 8.1, алгоритм дій практично не змінюється. Єдиною зміною є розташування параметра шляху «ImagePath». У версії 8.1 він розташований у розділі .

Розробники 1С радять включати режим налагодження виключно для тестових серверів, де і повинен проходити налагодження код. Причина цієї рекомендації полягає в падінні продуктивності при активації налагодження на сервері. Якщо у вас багато користувачів або потужність сервера залишає бажати кращого, поставтеся до цієї поради, щоб налагодження не мало негативних наслідків, уважно.

Для того щоб можна було налагоджувати серверні процедури, потрібно встановити прапори у формі "Сервіс->Параметри" конфігуратора:

Налагодження на сервері програм

Це описано у документації:

Книжка «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.

Спрацьовує тільки під час встановлення ключа "-debug" у реєстрі. У решті випадків чомусь не працює.

"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"

18.10.2016

Налагодження на сервері 1С (8.2, 8.3...)

У разі роботи бази 1С у клієнт-серверному варіанті, режим налагодження коду на стороні сервера вимкнено. Тому подивитися по-кроково, що відбувається при виконанні функції або процедури не вийде. Щоб увімкнути налагодження на стороні сервера, необхідно виконати кілька простих кроків.

Включаємо налагодження на сервері "1С:Підприємство" 8.2, 8.3

Перше, що необхідно зробити, це зупинити службу сервера "1С:Підприємство". Заходимо "Пуск - Виконати" (або поєднання клавіш "Windows + R"), пишемо "services.msc" (звичайно потрібно відкривати управління службами Windows від Адміністратора)

Після зупинки відкриваємо редактор реєстру Windows ("Пуск - Виконати" (або поєднання клавіш "Windows + R") пишемо "regedit"), і знаходимо гілку з ім'ям "" або "" залежно від версії платформи


Нас цікавить ключ реєстру під назвою "ImagePath". Наприкінці значення ключа дописуємо "-debug". Це означає, що режим налагодження за сервера 1С активізується.
Було: "C:\Program Files\1cv8\8.3.6.2530\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:Program Files\1cv8\srvinfo"
Стало: "C:\Program Files\1cv8\8.3.6.2530\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:Program Files\1cv8\srvinfo" -debug


Зберігаємо та запускаємо службу 1С. Все готово! Вдалого налагодження!

Як запустити налагодження на сервері 1С.

За замовчуванням, при використанні клієнт-серверної архітектури 1С: Підприємство режим налагодження коду 1С працює тільки на стороні клієнта. Серверні процедури та функції не видно клієнтській машині.

Щоб увімкнути використання налагодження на сервері 1С, необхідно виконати такі дії:

1. Знайти та зупинити в диспетчері служб службу «Агент сервера 1С:Підприємства 8.3» (для версії 8.3).

2. Відкрити редактор реєстру. Можна скористатися командним рядком або інструментом меню Пуск – Виконати… та командою regedit.

3. У реєстрі знайти гілку:

  • Для версії 1С 8.1
  • Для версії 1С 8.2
  • Для версії 1С 8.3

4. Змінити властивість ImagePath, додати до кінця рядка директиву "-debug". Вийде наступний рядок якості: "C:\Program Files (x86)\1cv8\8.3.6.2152\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files (x86) \ 1cv8 \ srvinfo » -debug

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

Ця стаття розповідає про те, як увімкнути налагодження на сервері 1С 8.1, 8.2 та 8.3 в операційних системах Windows та Ubuntu.

Крім цього зазначу, що ця стаття входить до невеликої серії статей про налагодження в 1С:

  • Як увімкнути налагодження на сервері 1С

Включаємо налагодження на сервері 1С у Windows

Запускаємо редактор реєстру, виконавши команду regedit (за допомогою Win+R або Пуск->Виконати).

Докладніше про налагодження за протоколом 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
ПОДІЛИТИСЯ:
Комп'ютери та сучасні гаджети