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

Весь код, связанный с модулем, хранится в одном каталоге внутри каталога 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 указаны необходимые файлы views, actions и assets.
  8. Зарегистрируйте модуль во веб-интерфейсе Zabbix и начните его использовать.

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