Инструменты · Отладка
debug_action
Управляет сессией отладки и выполнением — подключение к работающей базе с сервером отладки, отключение, продолжение, общая остановка всех предметов и шаги. Каждый шаг ждёт, где остановится выполнение, и отвечает тем же блоком, что debug_read wait.
Когда использовать
- Начать отладку —
connectк серверу отладки базы; новые сеансы и фоновые задания подключаются сами. - Выполнение остановилось —
step_over,step_into,step_returnилиresume. - «Почему зависло?» —
suspendостанавливает все предметы там, где они сейчас. - Закончили —
disconnect: база продолжает работать.
Соседние инструменты домена «Отладка»
Операции
| operation | Что делает | Нужно передать |
|---|---|---|
connect | Подключение к работающей базе с сервером отладки. Сессия на рабочую область одна; при обрыве восстанавливается прозрачно, метки t1, t2 сохраняются. | project, infobase; по желанию debug_server_url, user, password |
disconnect | Отключение; база продолжает работать, ожидание wait отменяется. | ничего |
resume | Продолжить выполнение. По умолчанию не ждёт (🔵 running); с timeout_ms — ждёт следующей остановки. | по желанию target, timeout_ms |
suspend | Останавливает все предметы отладки на следующей исполняемой строке и ждёт остановки. Простаивающий клиент не остановится — нужен выполняющийся код. | по желанию timeout_ms |
step_into | Шаг с заходом в вызываемый метод. | по желанию target, timeout_ms |
step_over | Шаг без захода. | по желанию target, timeout_ms |
step_return | Выход из текущего метода. | по желанию target, timeout_ms |
Параметры
| Параметр и тип | Обязательный | Описание | По умолчанию |
|---|---|---|---|
operationстрока | да | Операция инструмента — значения и их смысл в таблице «Операции».значения: connect · disconnect · resume · suspend · step_into · step_over · step_return | — |
projectстрока | для connect | Проект EDT для поиска модулей; обязателен для connect. У расширения — свой проект. | — |
debug_server_urlстрока | нет | Адрес сервера отладки. По умолчанию http://127.0.0.1:1550 — файловая база с локальным сервером отладки. | — |
infobaseстрока | для connect | Псевдоним базы на сервере отладки; для файловой базы — DefAlias. Обязателен для connect. | — |
userстрока | нет | Пользователь сервера отладки; обычно не нужен. | — |
passwordстрока | нет | Пароль сервера отладки; в журнал не пишется. | — |
targetстрока | нет | Метка предмета отладки t1, t2. По умолчанию — единственный остановленный. У suspend не используется. | — |
timeout_msцелое | нет | Сколько ждать исхода, мс: у resume по умолчанию 0 (не ждать), у остальных 15000; максимум 60000. | — |
titleстрока | нет | Необязательная подпись вызова до 40 символов: клиент показывает её в шапке карточки вызова. На результат не влияет. | — |
Таблица собрана из схемы инструмента, которую получает агент при подключении.
Адреса
Адрес fqn не используется: база задаётся debug_server_url и infobase, предмет — меткой target.
Пример вызова и ответа
Исход шагов и ожидания одинаков: 🟠 suspended — остановлен, дальше ход агента, с полями target, at (модуль, метод и строка), breakpoint и фрагментом кода со стрелкой ►; 🔵 running — выполняется; ⚪ — завершён или нет предмета; 🔴 — ошибка.
{
"operation": "connect",
"project": "УТ2020",
"debug_server_url": "http://127.0.0.1:1550",
"infobase": "DefAlias"
}Пример ответа в подготовке Устройство ответа — на странице Формат ответов.
Отказы и ошибки
failed · сервер отладки не отвечает
Проверьте, что сервер отладки запущен на указанном порту и клиент подключён к нему с параметром /debuggerURL.
### 🔴 connect — `tcp://127.0.0.1:1560`
- **status:** 🔴 failed
- **message:** debug-сервер не отвечает (таймаут 1.5с)
- **target:** file-infobase (DefAlias)
- **fix_hint:** проверьте, что dbgs.exe запущен: dbgs --addr=127.0.0.1 --port=1560
#### Did you mean
- 1550
- 1570
#### Context
- активная сессия: нетrunning после шага
Шаг попал в долгий вызов. Повторите debug_read wait или остановите выполнение suspend.
failed · Unknown operation
Неизвестное значение operation. В ответе — fix_hint: supported: … со списком допустимых операций и секция Did you mean. Допустимо: connect, disconnect, resume, suspend, step_into, step_over, step_return.
failed · лицензия
Без действующего ключа инструмент отвечает карточкой failed с сообщением лицензия: … и подсказкой, где ввести ключ; в секции Context — список инструментов, доступных без ключа. Подробнее — Лицензия и бесплатный доступ.
Ограничения
- Одна сессия отладки на рабочую область.
- Клиентский таймаут вызова обычно меньше 60 секунд — ждите по 15–25 секунд и повторяйте.