Struktura plików modułu

Cały kod związany z modułem jest przechowywany w pojedynczym katalogu wewnątrz katalogu modules instalacji frontendu Zabbix (na przykład zabbix/ui/modules).

Drzewo plików modułów

example_module_directory/ (wymagane)
   manifest.json (wymagane) Metadane i definicja akcji.
   Module.php Inicjalizacja modułu i obsługa zdarzeń.
   actions/   pliki kontrolera akcji.
       SomethingView.php
       SomethingCreate.php
       SomethingDelete.php
       data_export/
           ExportAsXml.php
           ExportAsExcel.php
   views/   pliki widoków.
       example.something.view.php
       example.something.delete.php
   assets/   wszelkie dodatkowe pliki do wykorzystania w widokach. Należy określić w pliku manifest.json.
       js/   skrypty JavaScript używane w widokach.
           example.something.view.js.php
       css/   pliki CSS używane w widokach.
           example.something.css
        image.png   obraz do użycia w widokach.
        example.something.file   dowolny plik do użycia w widokach.

Tworzenie modułu

Przykładowy proces tworzenia modułu składa się z następujących kroków (jeśli jest dostępny, kliknij nazwę pliku lub folderu, aby wyświetlić dodatkowe szczegóły dotyczące kroku):

  1. Utwórz nowy katalog dla modułu w zabbix/ui/modules/.
  2. Dodaj plik manifest.json z metadanymi modułu.
  3. Utwórz folder views i zdefiniuj widok(y) modułu.
  4. Utwórz folder actions i zdefiniuj akcję(y) modułu.
  5. Utwórz plik Module.php (lub Widget.php dla widżetów pulpitu) i zdefiniuj reguły inicjalizacji i obsługi reguł.
  6. Utwórz folder assets dla plików JavaScript (umieść w assets/js), stylów CSS (umieść w assets/css) lub innych dodatkowych plików.
  7. Upewnij się, że określiłeś wymagane widoki, akcje i pliki zasobów w pliku manifest.json.
  8. Zarejestruj moduł w interfejsie użytkownika Zabbix i zacznij go używać.

Możesz zarejestrować i włączyć moduł zaraz po utworzeniu pliku manifest.json. Po włączeniu modułu możesz natychmiast wyświetlić podgląd wszystkich zmian wprowadzonych do plików modułu, odświeżając interfejs użytkownika Zabbix.