Режим агента конфигуратора

 

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

Введение

Конфигуратор, запущенный в режиме агента, выполняет функции SSH/SFTP-сервера и принимает команды по этим протоколам. Это позволяет подключаться к конфигуратору с удаленного компьютера и выполнять произвольное (в отличии от пакетного режима) количество операций таких как обновление конфигурации, загрузка/выгрузка и прочее.

Кроме этого появились возможность автоматизировать работу с конфигуратором, используя возможности других языков программирования.

Все описанные в статье действия и приведенные примеры выполнялись на ОС Windows 10 и технологической платформе версии 8.3.13.1458, в качестве SSH-клиента использовалась программа PuTTY. В качестве подопытной, использовалась пустая файловая база с администраторской ролью и одним пользователем с логином/паролем — admin:admin.

Запуск и подключение

Для запуска конфигуратора в режиме агента нужно выполнить команду следующего вида:

1cv8 DESIGNER <информационная база> /AgentMode [параметры режима агента] [/Visible]

1cv8 DESIGNER <информационная база> —  говорит о том, что нужно запустить конфигуратор указанной информационной базы. Указать информационную базу можно например так:

  • /F <каталог> — указываем полный или относительный путь к файловой базе, при необходимости (наличие пробелов) этот путь нужно заключить в кавычки;
  • /S <адрес> — указываем адрес к базе на сервере 1С, адрес выгляди так: ИмяСервера\ИмяБазыНаСервере;
  • /IBName <имя базы> — указываем имя информационной базы в списке информационных баз, при необходимости имя базы нужно заключить в кавычки.

Есть еще два параметра позволяющих указать информационную базу — /WS и /IBConnectionString, лично я их не пробовал, но вполне возможно, что и они подойдут.

/AgentMode [параметры режима агента] — в этой части, кроме обязательного параметра /AgentMode можно указать еще несколько параметров режима агента, рассмотрим каждый из них:

  • /AgentMode — обязательный параметр, включает режим агента конфигуратора;
  • /AgentPort <порт> — указывает номер TCP-порта, который используется для подключения по SSH, порт по умолчанию — 1543;
  • /AgentListenAddress <адрес> — указывает IP-адрес, который будет прослушиваться агентом, адрес по умолчанию — 127.0.0.1;
  • /AgentSSHHostKey <приватный ключ> — позволяет указать путь к закрытому ключу хоста, если этот параметр не указан, то ОБЯЗАТЕЛЬНО должен быть указана параметр /AgentSSHHostKeyAuto, если же ни один этих параметров не указан, то запуск конфигуратора в режиме агента будет невозможен;
  • /AgentSSHHostKeyAuto — указывает, что закрытый ключ хоста стандартных каталогах (зависит от ОС), если и там ключа нет, то будет создан новый ключ;
  • /AgentBaseDir <рабочий каталог> — позволяет указать каталог, который используется SFTP-сервером, а также при загрузке/выгрузке конфигурации, если параметр не указан, то будет использован стандартный каталог (зависит от ОС).

/Visible — использование этого параметра приведет к тому, что при запуске конфигуратора в режиме агента появится вот такое окно:

Конфигуратор. Режим агента
Конфигуратор. Режим агента

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

Итак, у меня имеется файловая база, которая в списке информационных баз носит название — «Режим агента», к ней и подключимся:

"C:\Program Files (x86)\1cv8\common\1cestart.exe" DESIGNER /IBName "Режим агента" /AgentMode /AgentSSHHostKeyAuto /AgentBaseDir D:\temp /Visible

Все в порядке:

Запуск конфигуратора в режиме агента
Запуск конфигуратора в режиме агента

Попробуем теперь подключиться к нашему конфигуратору при помощи PuTTY:

Подключаемся к конфигуратору при помощи PuTTY
Подключаемся к конфигуратору при помощи PuTTY

Все готово:

Конфигуратор в режиме агента готов к работе
Конфигуратор в режиме агента готов к работе
 

Команды

Подключившись к конфигуратору в режиме агента, мы получаем в свое распоряжение следующие команды (очевидно, что набор доступных команд будет расширяться — так как технология активно развивается):

  • Команда help;
  • Группа команд common — общие команды;
  • Группа команд options — команды работы с настройками;
  • Группа команд config — команды редактирования конфигурации;
  • Группа команд infobase-tools — сервисные команды работы с информационной базой.

Команды из группы команд применяются следующим образом: Группа Команда Параметры, например:

options set --output-format=json

Команда help

Эта команда, как нетрудно догадаться, показывает справочную информацию. При использовании без параметров выводит общую информацию о режиме агента. В качестве параметров можно использовать:

  • —version | -v — покажет версию технологической платформы;
  • название группы команд (например help options) — выведет информацию об указанной группе команд: список команд, описание, параметры.
Команда help
Команда help

Группа команд common

Эта группа команд отвечает за общие операции, их всего три:

  • connect-ib — подключение к информационной базе (которая указана при запуске режима агента), именно с этой команды нужно начинать любые операции непосредственно с информационной базой;
  • disconnect-ib — отключение от информационной базы;
  • shutdown — завершение работы конфигуратора в режиме агента (если, например, при старте не был указан параметр /Visible).

Команды из данной группы команд не имеют параметров.

Группа команд options

Команды из этой группы отвечают за управление настройками текущей сессии:

  • list — выводит список параметров и их текущее состояние;
  • get — позволяет получить значение параметра
    • —output-format — возвращает текущий формат вывода результата работы команд;
    • —show-prompt — возвращает состояние наличия приглашения командной строки designer>;
  • set — позволяет установить значения параметра
    • —output-format=<text|json> — устанавливает формат вывода результата работы команд;
    • —show-prompt=<yes|no> — управляет наличием приглашения командной строки designer>.

Эти настройки нужны для случаев когда работа с режимом агента при помощи каких-либо сторонних языков программирования — json как правило проще анализировать, а приглашение командной строки буде только мешаться.

Информацию о формате JSON-сообщений можно найти на сайте ИТС.

Команды группы config

В этой группе собраны команды отвечающие за работу с конфигурацией. Я приведу только сами команды, а параметры команд и их описание можно посмотреть с помощью команды help или на сайте ИТС:

  • dump-config-to-files (dump-files) — выгружает конфигурацию в XML-файлы;
  • load-config-from-files (load-files) — загружает конфигурацию из XML-файлов;
  • dump-external-data-processor-or-report-to-files (dump-ext-files) — выгружает внешнюю обработку или отчет в XML-файлы;
  • load-external-data-processor-or-report-from-files (load-ext-files) — загружает внешнюю обработку или отчет из XML-файлов;
  • update-db-cfg — обновляет конфигурацию базы данных.

Имена файлов и каталогов указываются относительно параметра /AgentBaseDir (который мы указывали при запуске режима агента). В скобках указаны сокращенные варианты названия команд.

Команды группы infobase-tools

Команды этой группы отвечают за предоставление сервисной информации об информационной:

  • debug-info — показывает информацию о настройках отладчика для информационной базы: включена отладка или нет, протокол отладки (tcp или http), адрес сервера отладки;
  • data-separation-common-attributes-list — выводит список имен разделителей информационной базы.

На этом все, надеюсь, что эта статья Вам помогла.

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

Оценка статьи:
УжасноПлохоНеплохоХорошоОтлично (Пока оценок нет)
Загрузка...

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: