[comment]: # ({d2a688ac-ed2f6c13})
# 3 Moduły frontend

[comment]: # ({/d2a688ac-ed2f6c13})

[comment]: # ({8c4f6bda-1060eddf})
#### Przegląd

Możliwe jest rozszerzenie funkcjonalności frontend Zabbix przez dodanie modułów firm trzecich lub tworzenie własnych modułów
bez konieczności zmiany kodu źródłowego Zabbix.

Należy pamiętać, że kod modułu będzie uruchamiany z takimi samymi uprawnieniami jak kod
źródłowy Zabbix. Oznacza to, że:

-   moduły firm trzecich mogą być szkodliwe. Musisz ufać modułom, które
    instalujesz;
-   błędy w kodzie modułu firmy trzeciej mogą spowodować awarię frontend. Jeśli tak się
    stanie, po prostu usuń kod modułu z frontend. Gdy tylko
    ponownie załadujesz frontend Zabbix, zobaczysz informację, że niektóre
    moduły są nieobecne. Przejdź do [Administracja modułami](/manual/web_interface/frontend_sections/administration/general#modules)
    (w *Administracja* → *Ogólne* → *Moduły*) i kliknij ponownie *Skanuj
    katalog*, aby usunąć nieistniejące moduły z bazy danych.

[comment]: # ({/8c4f6bda-1060eddf})

[comment]: # ({58ac3ffb-cffdc09c})
#### Instalacja

Zawsze należy przeczytać instrukcję instalacji dla konkretnego modułu. Zaleca
się instalowanie nowych modułów pojedynczo, aby łatwo wychwycić błędy.

Tuż przed instalacją modułu:

-   Upewnij się, że moduł został pobrany z zaufanego źródła.
    Instalacja szkodliwego kodu może prowadzić do konsekwencji, takich jak utrata
    danych
-   Różne wersje tego samego modułu (to samo ID) mogą być zainstalowane
    równolegle, ale jednocześnie może być włączona tylko jedna wersja

Kroki instalacji modułu:

-   Rozpakuj moduł we własnym folderze w katalogu `modules` Zabbix frontend
-   Upewnij się, że folder modułu zawiera co najmniej plik manifest.json
-   Przejdź do [Administracja modułami](/manual/web_interface/frontend_sections/administration/general#modules)
    i kliknij przycisk *Scan directory*
-   Nowy moduł pojawi się na liście wraz ze swoją wersją, autorem,
    opisem i statusem
-   Włącz moduł, klikając jego status

Rozwiązywanie problemów:

|Problem|Rozwiązanie|
|-------|--------|
|*Moduł nie pojawił się na liście*|Jeśli moduł nie pojawił się na liście, upewnij się, że plik manifest.json istnieje w modules/your-module/. Jeśli nie, moduł mógł zostać rozpakowany do niewłaściwego katalogu. Jeśli plik istnieje, moduł może nie być zgodny z używaną wersją Zabbix. Sprawdź również, czy użytkownik serwera WWW ma co najmniej uprawnienia odczytu i przeszukiwania (`r-x`) do folderu modułu oraz wszystkich podkatalogów, a także uprawnienia odczytu (`r--`) do wszystkich znajdujących się w nim plików.|
|*Frontend uległ awarii*|Kod modułu nie jest zgodny z bieżącą wersją Zabbix lub konfiguracją serwera. Usuń pliki modułu i ponownie załaduj frontend. Zobaczysz powiadomienie, że niektóre moduły są nieobecne. Przejdź do [Administracja modułami](/manual/web_interface/frontend_sections/administration/general#modules) i ponownie kliknij *Scan directory*, aby usunąć z bazy danych nieistniejące moduły.|
|*Pojawia się komunikat o błędzie dotyczący identycznej przestrzeni nazw, ID lub akcji*|Nowy moduł próbował zarejestrować przestrzeń nazw, ID lub akcje, które są już zarejestrowane przez inne włączone moduły. Wyłącz moduł powodujący konflikt (wspomniany w komunikacie o błędzie) przed włączeniem nowego modułu.|
|*Pojawiają się techniczne komunikaty o błędach*|Zgłoś błędy deweloperowi modułu.|

[comment]: # ({/58ac3ffb-cffdc09c})

[comment]: # ({5ca56638-26c922c0})
#### Tworzenie modułów

Aby uzyskać informacje o tworzeniu niestandardowych modułów, zobacz [Developer center](/devel/modules).

[comment]: # ({/5ca56638-26c922c0})
