Работа с Lua-приложениями#
Kintsugi agent (DBDA) поддерживает выполнение следующих Lua-приложений:
Стандартные – поставляются с дистрибутивом.
Кастомные. Kintsugi agent (DBDA) поддерживает загрузку пользовательских Lua-приложений из отдельной папки.
Виджет |
Название Lua-приложения |
Название слота |
Описание |
|---|---|---|---|
Данные ОС |
host_info |
host_info |
Информация о хосте, где установлен Kintsugi agent (DBDA) |
Информация о репликации |
host_pangolin_manager |
host_pangolin_manager_list |
Информация о кластере БД Pangolin manager/patroni |
Настройки репликации |
host_pangolin_manager |
host_pangolin_manager_config |
Значения из конфигурационного файла по репликации |
Состояние файловых систем |
host_pg_fs_info |
host_pg_fs_info_df |
Предоставление информации о состоянии файловых систем |
Состояние файловой системы |
host_pg_fs_info |
host_pg_fs_info_du |
Предоставление информации о состоянии файловой системы |
Проверка защищенного хранилища |
host_pg_auth_check |
host_pg_auth_check |
Предоставление информации о проверке аутентификации СУБД |
Данные сертификата |
host_sslcert_log |
host_sslcert_log |
Предоставление информации о сертификатах SSL сервера СУБД |
Добавление кастомных Lua-приложений в Kintsugi agent (DBDA)#
Последовательность выполнения#
Рассмотрим сценарий добавления кастомных Lua-приложений в Kintsugi agent (DBDA) на примере Lua-приложения, которое возвращает информацию о дисковом пространстве:
Перейдите в директорию, которая задана в параметре
luavm.pathв конфигурационном файле Kintsugi agent (DBDA)etc/kgagent/config.yml.Создайте директорию для нового Lua-приложения, выполнив команду
mkdir custom.Перейдите в созданную директорию.
Создайте основной файл 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-приложения все слоты должны иметь уникальные имена.
Выполните перезапуск Kintsugi agent (DBDA):
Остановите сервис, выполнив команду:
systemctl stop kgagentЗапустите сервис, выполнив команду:
systemctl start kgagentПроверьте статус сервиса, выполнив команду:
systemctl status kgagent
Результат#
Kintsugi agent (DBDA) запустился и Lua-приложение доступно.
В результате добавления Lua-приложения становится доступным выполнение вызова custom.check_disk_space на соответствующем хосте при помощи публичного API.