[comment]: # ({ffe98fbd-ffe98fbd})
# 1 Rozszerzanie agentów Zabbix

Ten samouczek zawiera instrukcje krok po kroku dotyczące rozszerzania
funkcjonalności agenta Zabbix przy użyciu [parametru użytkownika](/manual/config/items/userparameters).

[comment]: # ({/ffe98fbd-ffe98fbd})

[comment]: # ({8f2323c0-8f2323c0})
##### Krok 1

Napisz skrypt lub polecenie wiersza poleceń, aby pobrać wymagany parametr.

Na przykład możemy użyć następującego polecenia, aby uzyskać całkowitą
liczbę zapytań wykonanych przez serwer MySQL:

    mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

Po wykonaniu polecenie zwraca całkowitą liczbę zapytań SQL.

[comment]: # ({/8f2323c0-8f2323c0})

[comment]: # ({6117d271-6117d271})
##### Krok 2

Dodaj polecenie do zabbix\_agentd.conf:

    UserParameter=mysql.questions,mysqladmin -uroot status | cut -f4 -d":" | cut -f1 -d"S"

**mysql.questions** jest unikalnym identyfikatorem. Może to być dowolny prawidłowy identyfikator klucza,
na przykład *queries*.

Przetestuj ten parametr, używając agenta Zabbix z flagą "-t" (jeśli jest uruchamiany
jako root, pamiętaj jednak, że agent może mieć inne uprawnienia
po uruchomieniu jako demon):

    zabbix_agentd -t mysql.questions

[comment]: # ({/6117d271-6117d271})

[comment]: # ({67b38df5-67b38df5})
##### Krok 3

Przeładuj parametry użytkownika z pliku konfiguracyjnego, uruchamiając:

    zabbix_agentd -R userparameter_reload

Możesz także ponownie uruchomić agent zamiast używać polecenia runtime control.

Przetestuj parametr za pomocą narzędzia [zabbix\_get](/manual/concepts/get).

[comment]: # ({/67b38df5-67b38df5})

[comment]: # ({4a46fd71-4a46fd71})
##### Krok 4

Dodaj nową pozycję z kluczem Key=mysql.questions do monitorowanego hosta. Typ
pozycji musi być ustawiony na Zabbix Agent lub Zabbix Agent (active).

Pamiętaj, że typ zwracanych wartości musi być poprawnie ustawiony na
serwerze Zabbix. W przeciwnym razie Zabbix ich nie zaakceptuje.

[comment]: # ({/4a46fd71-4a46fd71})
