模块文件结构

所有与模块相关的代码都存储在Zabbix前端安装目录下的modules子目录中(例如zabbix/ui/modules)。

模块文件树

example_module_directory/          (required)
          manifest.json                   (required)  Metadata and action definition.
          Module.php                                  Module initialization and event handling.
          actions/                                    Action controller files.
              SomethingView.php
              SomethingCreate.php
              SomethingDelete.php
              data_export/
                  ExportAsXml.php
                  ExportAsExcel.php
          views/                                      View files.
              example.something.view.php
              example.something.delete.php
          assets/                                     Any additional files to be used in views. Must be specified in manifest.json.
              js/                                     JavaScript files used in views.
                  example.something.view.js.php
              css/                                    CSS files used in views.
                  example.something.css
               image.png                              Images used in views.
               example.something.file                 Any file for using in views.

编写模块

模块开发流程包含以下步骤(若存在相关链接,可点击file或文件夹名称查看步骤详情):

  1. zabbix/ui/modules/目录下创建新模块文件夹
  2. 添加manifest.json file并配置模块元数据
  3. 创建views文件夹并定义模块视图
  4. 创建actions文件夹并定义模块操作
  5. 创建Module.php(仪表板小部件使用Widget.php)file并定义初始化及事件处理规则
  6. 创建assets文件夹存放JavaScript文件(置于assets/js)、CSS样式(置于assets/css)及其他附加文件
  7. 确保在manifest.json中声明所需的视图、操作及资源文件
  8. 在Zabbix前端Register模块并开始使用

完成manifest.json file的create后即可注册并启用模块。 模块启用后,刷新Zabbix前端即可实时预览所有模块文件的修改效果。