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

Весь код, связанный с модулем, хранится в одном каталоге внутри каталога 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.