Pielāgoti brīdinājumu skripti
Pārskats
Ja jūs neesat apmierināts ar esošajiem mediju tipiem brīdinājumu nosūtīšanai, ir alternatīvs veids, kā to izdarīt. Jūs varat izveidot skriptu, kas apstrādās paziņojumu jums vēlamajā veidā.
Pielāgotie brīdinājumu skripti tiek izpildīti Zabbix serverī. Šiem skriptiem jāatrodas direktorijā, kas norādīta servera konfigurācijas faila AlertScriptsPath parametrā.
Šeit ir pielāgota brīdinājumu skripta piemērs:
#!/bin/bash
to=$1
subject=$2
body=$3
host=$4
value=$5
cat <<EOF | mail -s "$subject" "$to"
$body
Host: $host
Value: $value
EOF
Zabbix pārbauda izpildīto komandu un skriptu izejas kodu. Jebkurš izejas kods, kas atšķiras no 0, tiek uzskatīts par komandas izpildes kļūdu. Šādos gadījumos Zabbix mēģinās atkārtot neveiksmīgo izpildi.
Vides mainīgie skriptam netiek saglabāti vai izveidoti, tāpēc tie ir jāapstrādā tieši.
Konfigurēšana
Lai konfigurētu pielāgotus brīdinājumu skriptus kā multivides tipu:
- Dodieties uz Alerts > Media types.
- Noklikšķiniet uz Create media type.
- Veidlapā ievadiet skripta multivides tipa parametrus.
Cilnē Media type ir ietverti vispārīgie multivides tipa atribūti:

Visi obligātie ievades lauki ir atzīmēti ar sarkanu zvaigznīti.
Tālāk norādītie parametri attiecas uz skripta multivides tipu:
| Parametrs | Apraksts |
|---|---|
| Script name | Ievadiet skripta faila nosaukumu (piemēram, notification.sh), kas atrodas direktorijā, kura norādīta servera konfigurācijas parametrā AlertScriptsPath. |
| Script parameters | Pievienojiet neobligātus skripta parametrus, kas tiks nodoti skriptam kā komandrindas argumenti to definēšanas secībā. Skripta parametri atbalsta makro {ALERT.SENDTO}, {ALERT.SUBJECT}, {ALERT.MESSAGE} un visus makro, kas tiek atbalstīti paziņojumos, kā arī lietotāja makro. |
Detalizētu informāciju par noklusējuma ziņojumu un brīdinājumu apstrādes opciju konfigurēšanu skatiet sadaļā common media type parameters.
Pat ja brīdinājuma skripts neizmanto noklusējuma ziņojumus, šim multivides tipam izmantotajiem darbības tipiem joprojām ir jādefinē ziņojumu veidnes. Pretējā gadījumā paziņojums netiks nosūtīts.
Ja ir konfigurēts vairāk nekā viens skripta multivides tips, brīdinājumu apstrādes procesi šos skriptus var apstrādāt paralēli.
Kopējo brīdinājumu apstrādes procesu skaitu ierobežo servera konfigurācijas faila parametrs StartAlerters.
Testēšana
Lai pārbaudītu konfigurētu skripta mediju tipu:
-
Atrodiet attiecīgo skriptu sarakstā ar mediju tipiem.
-
Noklikšķiniet uz Test saraksta pēdējā kolonnā; testēšanas forma tiks atvērta uznirstošajā logā. Testēšanas forma saturēs tikpat daudz parametru, cik ir konfigurēts skripta mediju tipam.
-
Ja nepieciešams, rediģējiet skripta parametru vērtības. Rediģēšana ietekmē tikai testēšanas procedūru; faktiskās vērtības netiks mainītas.
-
Noklikšķiniet uz Test.

Pārbaudot konfigurētu skripta mediju tipu, {ALERT.SENDTO}, {ALERT.SUBJECT}, {ALERT.MESSAGE} un lietotāja makrosi tiks aizstāti ar to vērtībām, taču makrosi, kas ir saistīti ar notikumiem (piem., {HOST.HOST}, {ITEM.LASTVALUE} u.c.), netiks aizstāti, jo testēšanas laikā nav saistīta notikuma, no kura iegūt detaļas. Ņemiet vērā, ka makrosi {ALERT.SUBJECT} un {ALERT.MESSAGE} iekšpusē arī netiks aizstāti. Piemēram, ja {ALERT.SUBJECT} vērtība ir veidota kā "Problem: {EVENT.NAME}", tad makross {EVENT.NAME} netiks aizstāts.
Lietotāja mediji
Kad mediju tips ir konfigurēts, dodieties uz sadaļu Users > Users un rediģējiet lietotāja profilu, piešķirot šim lietotājam šo mediju tipu. Lietotāja mediju iestatīšanas darbības, kas ir kopīgas visiem mediju tipiem, ir aprakstītas lapā Media types.
Ņemiet vērā, ka, definējot lietotāja medijus, lauks Send to nevar būt tukšs. Ja šis lauks netiek izmantots brīdinājuma skriptā, ievadiet jebkuru atbalstīto rakstzīmju kombināciju, lai apietu validācijas prasības.