Файловая структура модуля

Весь код, связанный с модулем, хранится в одном каталоге внутри каталога modules вашей установки веб-интерфейса Zabbix (например, zabbix/ui/modules).

Дерево файлов модуля

example_module_directory/          (обязательно)
   manifest.json                   (обязательно)  Метаданные и определение действия.
   Module.php                                  Инициализация модуля и обработка событий.
   actions/                                    Файлы контроллера действий.
       SomethingView.php
       SomethingCreate.php
       SomethingDelete.php
       data_export/
           ExportAsXml.php
           ExportAsExcel.php
   views/                                      Представления файлов.
       example.something.view.php
       example.something.delete.php
   assets/                                     Любые дополнительные файлы, которые будут использоваться в представлениях. Должно быть указано в manifest.json.
       js/                                     Файлы JavaScript, используемые в представлениях.
           example.something.view.js.php
       css/                                    CSS-файлы, используемые в представлениях.
           example.something.css
        image.png                              Изображения, используемые в представлениях.
        example.something.file                 Любой файл для использования в представлениях.

Написание модуля

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

  1. Создайте новый каталог для модуля внутри zabbix/ui/modules/.
  2. Добавьте файл manifest.json с метаданными модуля.
  3. Создайте папку views и определите представление(я) модуля.
  4. Создайте папку actions и определите действие(я) модуля.
  5. Создайте файл Module.php (или Widget.php для виджетов панели) и определите правила инициализации и обработки событий.
  6. Создайте папку assets для файлов JavaScript (поместите в assets/js), стилей CSS (поместите в assets/css) или любых других дополнительных файлов.
  7. Обязательно укажите необходимые представления, действия и файлы ресурсов в файле Manifest.json.
  8. Зарегистрируйте модуль в веб-интерфейсе Zabbix и начните его использовать.

Вы можете зарегистрировать и включить модуль, как только создадите файл manifest.json. Как только модуль включен, вы можете сразу просмотреть все изменения, внесенные в файлы модуля, обновив веб-интерфейс Zabbix.