Добавление кастомных Lua-приложений в Kintsugi agent (DBDA)#

Kintsugi agent (DBDA) поддерживает выполнение следующих видов Lua-приложений:

Предусловия#

Перейдите в директорию, которая задана в параметре luavm.path в конфигурационном файле Kintsugi agent (DBDA) etc/kgagent/config.yml.

Последовательность выполнения#

Рассмотрим сценарий добавления кастомных Lua-приложений в Kintsugi agent (DBDA) на примере Lua-приложения, которое возвращает информацию о дисковом пространстве:

  1. Создайте директорию для нового Lua-приложения, выполнив команду mkdir custom.

  2. Перейдите в созданную директорию.

  3. Создайте основной файл Lua-приложения init.lua:

    local check_disk_space_fn = function(self)
    local output, ec = kg.system.exec("df", "-h")
    self.send_text("Дисковое пространство:\n" .. output)
    end
    
    kg.signals.bind("check_disk_space", check_disk_space_fn, {})
    

    Внимание

    В рамках одного Lua-приложения все слоты должны иметь уникальные имена.

  4. Выполните перезапуск Kintsugi agent (DBDA):

    1. Остановите сервис, выполнив команду:

      systemctl stop kgagent
      
    2. Запустите сервис, выполнив команду:

      systemctl start kgagent
      
    3. Проверьте статус сервиса, выполнив команду:

      systemctl status kgagent
      

Результат#

Kintsugi agent (DBDA) запустился и Lua-приложение доступно.

В результате добавления Lua-приложения становится доступным выполнение вызова custom.check_disk_space на соответствующем хосте при помощи публичного API.