4 Vēstures funkcijas
Visas šeit uzskaitītās funkcijas tiek atbalstītas:
Funkcijas ir uzskaitītas bez papildu informācijas. Noklikšķiniet uz funkcijas, lai skatītu pilnu informāciju.
| Funkcija | Apraksts |
|---|---|
| change | Atšķirības apjoms starp iepriekšējo un jaunāko vērtību. |
| changecount | Izmaiņu skaits starp blakus esošām vērtībām noteiktajā novērtēšanas periodā. |
| count | Vērtību skaits noteiktajā novērtēšanas periodā. |
| countunique | Unikālo vērtību skaits noteiktajā novērtēšanas periodā. |
| find | Atrod vērtības atbilstību noteiktajā novērtēšanas periodā. |
| first | Pirmā (vecākā) vērtība noteiktajā novērtēšanas periodā. |
| firstclock | Pirmās (vecākās) vērtības laikspiedols noteiktajā novērtēšanas periodā. |
| fuzzytime | Pārbauda, cik ļoti pasīvā aģenta laiks atšķiras no Zabbix servera/starpniekservera laika. |
| last | Jaunākā vērtība. |
| lastclock | N-tās jaunākās vērtības laikspiedols noteiktajā novērtēšanas periodā. |
| logeventid | Pārbauda, vai pēdējā žurnāla ieraksta notikuma ID atbilst regulārajai izteiksmei. |
| logseverity | Pēdējā žurnāla ieraksta nopietnības līmenis. |
| logsource | Pārbauda, vai pēdējā žurnāla ieraksta avots atbilst regulārajai izteiksmei. |
| logtimestamp | N-tās jaunākās žurnāla vienuma vērtības žurnāla ziņojuma laikspiedols. |
| monodec | Pārbauda, vai ir notikusi monotona vērtību samazināšanās. |
| monoinc | Pārbauda, vai ir notikusi monotona vērtību palielināšanās. |
| nodata | Pārbauda, vai nav saņemti dati. |
| percentile | Perioda P-tā procentile, kur P (procenti) ir norādīts ar trešo parametru. |
| rate | Vidējais pieauguma ātrums sekundē monotoni pieaugošam skaitītājam noteiktajā laika periodā. |
Bieži izmantotie parametri
/host/keyir bieži izmantots obligāts pirmais parametrs funkcijām, kas atsaucas uz hosta vienuma vēsturi(sec|#num)<:time shift>ir bieži izmantots otrais parametrs funkcijām, kas atsaucas uz hosta vienuma vēsturi, kur:- sec - maksimālais novērtēšanas periods sekundēs (var izmantot laika sufiksus), vai
- #num - maksimālais novērtēšanas diapazons pēdējās savāktajās vērtībās (ja pirms tā ir jaucējzīme)
- time shift (neobligāts) ļauj pārvietot novērtēšanas punktu atpakaļ laikā. Skatiet vairāk informācijas par time shift norādīšanu.
Funkciju informācija
Dažas vispārīgas piezīmes par funkciju parametriem:
- Funkciju parametrus atdala ar komatu
- Neobligātie funkciju parametri (vai parametru daļas) ir norādīti ar
<> - Katras funkcijas specifiskie parametri ir aprakstīti pie attiecīgās funkcijas
- Parametri
/hosts/keyun(sec|#num)<:time shift>nekad nedrīkst būt pēdiņās
change(/host/key)
Atšķirības apjoms starp iepriekšējo un jaunāko vērtību.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Virkņu gadījumā atgriež: 0 - vērtības ir vienādas; 1 - vērtības atšķiras.
Parametri: skatiet kopīgos parametrus.
Komentāri:
- Tiks aprēķināta skaitliskā starpība, kā redzams šajos ienākošo piemērvērtību piemēros ('iepriekšējā' un 'jaunākā' vērtība = starpība):
'1' un '5' =+4
'3' un '1' =-2
'0' un '-2.5' =-2.5. - Trigeros noder pēkšņu lēcienu (vai kritumu), skaitītāju atiestatīšanas un skaitlisku stāvokļu pāreju noteikšanai.
- Skatiet arī: abs salīdzinājumam.
Piemēri:
change(/host/system.uptime)<0 #system uptime change has been negative since the last value (indicating a reboot)
change(/host/system.cpu.load[all,avg1])>2 #CPU load (for one minute) has jumped by more than 2 since the last value
change(/host/vfs.fs.size[/,free])<-1G #free disk space has dropped by more than 1 GB between checks
changecount(/host/key,(sec|#num)<:time shift>,<mode>)
Izmaiņu skaits starp blakus esošām vērtībām noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus
- mode (jābūt dubultpēdiņās) — iespējamās vērtības: all — skaitīt visas izmaiņas (noklusējums); dec — skaitīt samazinājumus; inc — skaitīt palielinājumus
Komentāri:
- Ne-skaitlisku vērtību tipiem parametrs mode tiek ignorēts.
- Trigeros noderīgs biežu stāvokļa izmaiņu uztveršanai (kas norāda uz nestabilitāti).
Piemēri:
changecount(/host/icmpping,10m)>5 #ping status has changed more than 5 times in 10 minutes
changecount(/host/vfs.file.contents["/sys/class/net/eth0/operstate"],1h)>5 #operational state of eth0 has changed more than 5 times in an hour
changecount(/host/proc.num[httpd],15m)>10 #the number of httpd processes has changed more than 10 times in 15 minutes
changecount(/host/key,#10,"inc") #the number of value increases (relative to the adjacent value) among the last 10 values
changecount(/host/key,24h,"dec") #the number of value decreases (relative to the adjacent value) for the last 24 hours until now
count(/host/key,(sec|#num)<:time shift>,<operator>,<pattern>)
Vērtību skaits noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus
- operator (jābūt dubultpēdiņās)
Atbalstītie
operators:
eq - vienāds (noklusējums integer, float)
ne - nav vienāds
gt - lielāks
ge - lielāks vai vienāds
lt - mazāks
le - mazāks vai vienāds
like (noklusējums string, text, log) - atbilst, ja satur šablonu (reģistrjutīgs)
bitand - bitu AND
regexp - reģistrjutīga atbilstība regulārajai izteiksmei, kas norādītapattern
iregexp - reģistrnejutīga atbilstība regulārajai izteiksmei, kas norādītapattern - pattern - nepieciešamais šablons (string argumentiem jābūt dubultpēdiņās)
Komentāri:
- Float vienumi tiek salīdzināti ar precizitāti 2.22e-16.
- like netiek atbalstīts kā operators integer vērtībām.
- like un bitand netiek atbalstīti kā operatori float vērtībām.
- String, text un log vērtībām tiek atbalstīti tikai operatori eq, ne, like, regexp un iregexp.
- Ja kā operators tiek izmantots bitand, ceturto
patternparametru var norādīt kā divus skaitļus, atdalītus ar '/': number_to_compare_with/mask. count() aprēķina "bitu AND" no vērtības un mask un salīdzina rezultātu ar number_to_compare_with. Ja "bitu AND" rezultāts ir vienāds ar number_to_compare_with, vērtība tiek ieskaitīta.
Ja number_to_compare_with un mask ir vienādi, jānorāda tikai mask (bez '/'). - Ja kā operators tiek izmantots regexp vai iregexp, ceturtais
patternparametrs var būt parasta vai globāla (sākas ar '@') regulārā izteiksme. Globālo regulāro izteiksmju gadījumā reģistrjutība tiek mantota no globālās regulārās izteiksmes iestatījumiem. Regexp salīdzināšanas vajadzībām float vērtības vienmēr tiks attēlotas ar 4 cipariem aiz '.'. Ņemiet vērā arī to, ka lieliem skaitļiem atšķirība starp decimālo (glabājas datubāzē) un bināro (izmanto Zabbix serveris) attēlojumu var ietekmēt 4. ciparu aiz komata.
Piemēri:
count(/host/icmpping,30m,,"0")>5 #ping nav izdevies vairāk nekā 5 reizes 30 minūtēs
count(/host/key,10m,"like","error") #vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kas satur 'error'
count(/host/key,10m,,12) #vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kas ir vienādas ar '12'
count(/host/key,10m,"gt",12) #vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kas ir lielākas par '12'
count(/host/key,#10,"gt",12) #vērtību skaits pēdējās 10 vērtībās līdz šim brīdim, kas ir lielākas par '12'
count(/host/key,10m:now-1d,"gt",12) #vērtību skaits starp periodu pirms 24 stundām un pirms 24 stundām mīnus 10 minūtes no pašreizējā brīža, kas bija lielākas par '12'
count(/host/key,10m,"bitand","6/7") #vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kurām 3 vismazāk nozīmīgajos bitos ir '110' (binārā formā)
count(/host/key,10m:now-1d) #vērtību skaits starp periodu pirms 24 stundām un pirms 24 stundām mīnus 10 minūtes no pašreizējā brīža
countunique(/host/key,(sec|#num)<:time shift>,<operator>,<pattern>)
Unikālo vērtību skaits definētajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus
- operator (jābūt dubultpēdiņās).
Atbalstītie
operatori:
eq - vienāds (noklusējums integer, float)
ne - nav vienāds
gt - lielāks par
ge - lielāks vai vienāds
lt - mazāks par
le - mazāks vai vienāds
like (noklusējums string, text, log) - atbilst, ja satur šablonu (reģistrjutīgs)
bitand - bitu UN
regexp - reģistrjutīga atbilstībapatternnorādītajai regulārajai izteiksmei
iregexp - reģistrnejutīga atbilstībapatternnorādītajai regulārajai izteiksmei - pattern - nepieciešamais šablons (virknes argumentiem jābūt dubultpēdiņās)
Komentāri:
- Float vienumi tiek salīdzināti ar precizitāti 2.22e-16.
- like netiek atbalstīts kā operators integer vērtībām.
- like un bitand netiek atbalstīti kā operatori float vērtībām.
- String, text un log vērtībām tiek atbalstīti tikai operatori eq, ne, like, regexp un iregexp.
- Ja kā operators tiek izmantots bitand, ceturto
patternparametru var norādīt kā divus skaitļus, atdalītus ar '/': number_to_compare_with/mask. countunique() aprēķina "bitu UN" no vērtības un mask un salīdzina rezultātu ar number_to_compare_with. Ja "bitu UN" rezultāts ir vienāds ar number_to_compare_with, vērtība tiek ieskaitīta.
Ja number_to_compare_with un mask ir vienādi, var norādīt tikai mask (bez '/'). - Ja kā operators tiek izmantots regexp vai iregexp, ceturtais
patternparametrs var būt parasta vai globāla (sākas ar '@') regulārā izteiksme. Globālo regulāro izteiksmju gadījumā reģistrjutība tiek mantota no globālās regulārās izteiksmes iestatījumiem. Regexp salīdzināšanas vajadzībām float vērtības vienmēr tiks attēlotas ar 4 cipariem aiz '.'. Ņemiet vērā arī to, ka lieliem skaitļiem atšķirība starp decimālo (glabājas datubāzē) un bināro (izmanto Zabbix serveris) attēlojumu var ietekmēt 4. ciparu aiz komata.
Piemēri:
countunique(/host/key,10m) #unikālo vērtību skaits pēdējās 10 minūtēs līdz šim brīdim
countunique(/host/key,10m,"like","error") #unikālo vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kas satur 'error'
countunique(/host/key,10m,,12) #unikālo vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kas ir vienādas ar '12'
countunique(/host/key,10m,"gt",12) #unikālo vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kas ir lielākas par '12'
countunique(/host/key,#10,"gt",12) #unikālo vērtību skaits pēdējās 10 vērtībās līdz šim brīdim, kas ir lielākas par '12'
countunique(/host/key,10m:now-1d,"gt",12) #unikālo vērtību skaits starp periodu pirms 24 stundām un 10 minūtēm līdz periodam pirms 24 stundām no pašreizējā brīža, kas bija lielākas par '12'
countunique(/host/key,10m,"bitand","6/7") #unikālo vērtību skaits pēdējās 10 minūtēs līdz šim brīdim, kurām 3 vismazāk nozīmīgajos bitos ir '110' (bināri)
countunique(/host/key,10m:now-1d) #unikālo vērtību skaits starp periodu pirms 24 stundām un 10 minūtēm līdz periodam pirms 24 stundām no pašreizējā brīža
find(/host/key,(sec|#num)<:time shift>,<operator>,<pattern>)
Atrod vērtības atbilstību definētajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Atgriež: 1 - atrasts; 0 - pretējā gadījumā.
Parametri:
- Skatiet kopīgos parametrus
- sec vai #num (neobligāts) - pēc noklusējuma tiek izmantota jaunākā vērtība, ja nav norādīts
- operator (jābūt dubultpēdiņās)
Atbalstītie
operatori:
eq - vienāds (noklusējums integer, float)
ne - nav vienāds
gt - lielāks
ge - lielāks vai vienāds
lt - mazāks
le - mazāks vai vienāds
like (noklusējums string, text, log) - atbilst, ja saturpatternnorādīto virkni (reģistrjutīgs)
bitand - bitu UN
regexp - reģistrjutīga atbilstībapatternnorādītajai regulārajai izteiksmei
iregexp - reģistrnejutīga atbilstībapatternnorādītajai regulārajai izteiksmei - pattern - nepieciešamais raksts (virknes argumentiem jābūt dubultpēdiņās); Perl Compatible Regular Expression (PCRE) regulārā izteiksme, ja
operatorir regexp, iregexp
Komentāri:
- Ja tiek apstrādāta vairāk nekā viena vērtība, tiek atgriezts '1', ja ir vismaz viena atbilstoša vērtība.
- like netiek atbalstīts kā operators integer vērtībām.
- like un bitand netiek atbalstīti kā operatori float vērtībām.
- String, text un log vērtībām tiek atbalstīti tikai operatori eq, ne, like, regexp un iregexp.
- Ja kā operators tiek izmantots regexp vai iregexp, ceturtais
patternparametrs var būt parasta vai globāla (sākas ar '@') regulārā izteiksme. Globālo regulāro izteiksmju gadījumā reģistrjutība tiek pārmantota no globālās regulārās izteiksmes iestatījumiem.
Piemēri:
find(/host/key,10m,"like","error") #atrod vērtību, kas satur 'error', pēdējo 10 minūšu laikā līdz šim brīdim
find(/host/agent.version,,"like","beta")=1 #Zabbix aģents izmanto beta versiju, tas ir jāatjaunina
find(/host/log[/var/log/nginx/access.log],,"regexp"," 500 ")=1 #ir atrasta iekšējā tīmekļa servera kļūda
first(/host/key,sec<:time shift>)
Pirmā (vecākā) vērtība definētajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus
Skatiet arī last().
Piemērs:
first(/host/key,1h) #retrieve the oldest value within the last hour until now
firstclock(/host/key,sec<:laika nobīde>)
Vecākās vērtības laikspiedols definētajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus.
Funkcija neizdodas ar kļūdu, ja norādītajā periodā nav savākti dati.
Skatiet arī lastclock().
Piemēri:
firstclock(/host/key,1h) #iegūt vecākās vērtības laikspiedolu pēdējās stundas laikā
firstclock(/host/key,1h:now-24h) #iegūt vecākās vērtības laikspiedolu pēdējās stundas laikā pirms dienas
fuzzytime(/host/key,sec)
Pārbauda, cik lielā mērā pasīvā aģenta laiks atšķiras no Zabbix servera/starpniekservera laika.
Atbalstītie vērtību tipi: Float, Integer.
Atgriež: 1 - atšķirība starp pasīvā vienuma vērtību (kā laika zīmogu) un Zabbix servera/starpniekservera laika zīmogu (vērtības ievākšanas laiku) ir mazāka vai vienāda ar sec sekundēm; 0 - pretējā gadījumā.
Parametri:
- Skatiet kopīgos parametrus.
Komentāri:
- Parasti izmanto kopā ar vienumu 'system.localtime', lai pārbaudītu, vai lokālais laiks ir sinhronizēts ar Zabbix servera lokālo laiku. Ņemiet vērā, ka 'system.localtime' Zabbix aģentam ir jākonfigurē kā pasīvā pārbaude; Zabbix aģentā 2 to var konfigurēt arī kā aktīvo pārbaudi.
- Var izmantot arī ar atslēgu
vfs.file.time[/path/file,modify], lai pārbaudītu, ka fails ilgu laiku nav ticis atjaunināts. - Šo funkciju nav ieteicams izmantot sarežģītās trigeru izteiksmēs (kur iesaistīti vairāki vienumi), jo tā var radīt negaidītus rezultātus (laika starpība tiks mērīta ar jaunāko metriku), piemēram,
fuzzytime(/Host/system.localtime,60s)=0 or last(/Host/trap)<>0.
Piemēri:
fuzzytime(/host/system.localtime,5m)=0 #klienta lokālais laiks atšķiras no Zabbix servera/starpniekservera laika par vairāk nekā 5 minūtēm
fuzzytime(/host/system.localtime,5m)=0 and nodata(/host/system.localtime,10m)=0 #klienta lokālais laiks atšķiras no Zabbix servera/starpniekservera laika par vairāk nekā 5 minūtēm (vienlaikus pārliecinoties, ka vienums nav pārstājis ziņot datus)
last(/host/key,<#num<:time shift>>)
Pēdējā vērtība.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus
- #num (neobligāts) - N-tā pēdējā vērtība
Komentāri:
- Ņemiet vērā, ka ar jaucējzīmi apzīmēts laika periods (#N) šeit darbojas citādi nekā daudzās citās funkcijās.
Piemēram:
last(/host/key)vienmēr ir vienāds arlast(/host/key,#1);last(/host/key,#3)- trešā pēdējā vērtība (nevis pēdējās trīs vērtības). - Zabbix negarantē precīzu vērtību secību, ja vēsturē vienas sekundes laikā pastāv vairāk nekā divas vērtības.
- Skatiet arī first().
Piemēri:
last(/host/key) #iegūt pēdējo vērtību
last(/host/key,#2) #iegūt iepriekšējo vērtību
last(/host/key,#1)<>last(/host/key,#2) #pēdējās divas vērtības atšķiras
lastclock(/host/key,<#num<:time shift>>)
N-tās jaunākās vērtības laikspiedols noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer, String, Text, Log.
Parametri:
- Skatiet kopīgos parametrus;
- #num (neobligāts) — N-tā jaunākā vērtība.
Funkcija neizdodas ar kļūdu, ja norādītajā periodā nav savākti dati vai nav savākta N-tā vērtība.
Skatiet arī firstclock().
Piemēri:
lastclock(/host/key) #iegūt jaunākās vērtības laikspiedolu
lastclock(/host/key,#2) #iegūt 2. jaunākās vērtības laikspiedolu
now()-lastclock(/host/heartbeat.item)>300 #kopš heartbeat vienuma atjaunināšanas ir pagājušas vairāk nekā 5 minūtes
lastclock(/host/system.cpu.load[all,avg1])-lastclock(/host/system.cpu.load[all,avg1],#2)>300 #atjaunināšanas intervāls starp pēdējām divām vērtībām pārsniedz 5 minūtes
((now()-lastclock(/host/system.cpu.load[all,avg1])<120 and last(/host/system.cpu.load[all,avg1])>5)) #CPU vērtība ir augsta un vērtība ir svaiga (mazāk nekā 2 minūtes)
logeventid(/host/key,<#num<:time shift>>,<pattern>)
Pārbauda, vai pēdējā žurnāla ieraksta notikuma ID atbilst regulārajai izteiksmei.
Atbalstītie vērtību tipi: Log.
Atgriež: 0 - neatbilst; 1 - atbilst.
Parametri:
- Skatiet kopīgos parametrus
- #num (neobligāts) - N-tā jaunākā vērtība
- pattern (neobligāts) - regulārā izteiksme, kas apraksta nepieciešamo šablonu, Perl Compatible Regular Expression (PCRE) stilā (virknes argumentiem jābūt dubultpēdiņās)
Piemēri:
logeventid(/host/eventlog[Security],,"4625")=1 #atrasts žurnāla ieraksts ar ID, kas atbilst "4625" (neveiksmīga autentifikācija)
logeventid(/host/eventlog[System],,"6008|41")=1 #atrasts žurnāla ieraksts ar ID, kas atbilst "6008" vai "41"
logseverity(/host/key,<#num<:time shift>>)
Pēdējā žurnāla ieraksta žurnāla smaguma pakāpe.
Atbalstītie vērtību tipi: Log.
Atgriež: 0 - noklusējuma smaguma pakāpe; N - smaguma pakāpe (vesels skaitlis, noderīgs Windows notikumu žurnāliem: 1 - Informācija, 2 - Brīdinājums, 4 - Kļūda, 7 - Neveiksmīga auditēšana, 8 - Veiksmīga auditēšana, 9 - Kritiska, 10 - Detalizēta).
Parametri:
- Skatiet kopīgos parametrus
- #num (neobligāts) - N-tā jaunākā vērtība
Zabbix ņem žurnāla smaguma pakāpi no Windows notikumu žurnāla lauka Information.
Piemēri:
logseverity(/host/log[/var/log/syslog],10m)>3 #a log entry with severity above "3" found
logseverity(/host/eventlog[System],10m)=4 #a log entry with severity equaling "Error" found
logsource(/host/key,<#num<:time shift>>,<pattern>)
Pārbauda, vai pēdējā žurnāla ieraksta žurnāla avots atbilst regulārajai izteiksmei.
Atbalstītie vērtību tipi: Log.
Atgriež: 0 - neatbilst; 1 - atbilst.
Parametri:
- Skatiet kopīgos parametrus
- #num (neobligāts) - N-tā jaunākā vērtība
- pattern (neobligāts) - regulārā izteiksme, kas apraksta nepieciešamo šablonu, Perl Compatible Regular Expression (PCRE) stilā (virknes argumentiem jābūt dubultpēdiņās)
Parasti izmanto Windows notikumu žurnāliem.
Piemēri:
logsource(/host/eventlog[Application],,"MSSQLSERVER")=1 #a log entry with source matching "MSSQLSERVER" found
logsource(/host/eventlog[System],,"Service Control Manager")=1 #a log entry with source matching "Service Control Manager" found
logsource(/host/eventlog[System],,"Service Control Manager")=1 and logeventid(/host/eventlog[System],,"7031")=1 #a log entry with source matching "Service Control Manager" and event ID matching "7031" found
logtimestamp(/host/key,<#num<:time shift>>)
N-tās jaunākās žurnāla vienuma vērtības žurnāla ziņojuma laikspiedols.
Atbalstītie vērtību tipi: Log.
Parametri:
- Skatiet kopīgos parametrus;
- #num (neobligāts) — N-tā jaunākā vērtība.
Komentāri:
- Laika nobīdes aprēķins ir balstīts uz vienuma vērtības pulksteni, nevis uz žurnāla ziņojuma laikspiedolu;
- Funkcija neizdodas ar kļūdu, ja:
- tiek saņemts vienums, kas nav žurnāla tipa;
- norādītajā periodā nav savākti dati;
- nav savākta N-tā vērtība;
- žurnāla ziņojums nesatur laikspiedola vērtību.
Piemēri:
logtimestamp(/host/key) #iegūt jaunākā žurnāla ziņojuma laikspiedolu
logtimestamp(/host/key,#2) #iegūt 2. jaunākā žurnāla ziņojuma laikspiedolu
logtimestamp(/host/key,#3:now-1d) #iegūt 3. jaunākā žurnāla ziņojuma laikspiedolu pirms dienas
monodec(/host/key,(sec|#num)<:time shift>,<mode>)
Pārbauda, vai ir noticis monotons vērtību samazinājums.
Atbalstītie vērtību tipi: Integer.
Atgriež: 1 - ja visi elementi laika periodā nepārtraukti samazinās; 0 - pretējā gadījumā.
Parametri:
- Skatiet kopīgos parametrus
- mode (jābūt dubultpēdiņās) - weak (katra vērtība ir mazāka vai tāda pati kā iepriekšējā; pēc noklusējuma) vai strict (katra vērtība ir samazinājusies)
Piemēri:
monodec(/host/system.swap.size[all,free],60s) + monodec(/host2/system.swap.size[all,free],60s) + monodec(/host3/system.swap.size[all,free],60s) #aprēķina, cik hostos ir bijis brīvā swap apjoma samazinājums
monodec(/host/proc.num[nginx],10m,"strict")=1 #nginx procesu skaits 10 minūšu laikā ir monotoni samazinājies
monoinc(/host/key,(sec|#num)<:time shift>,<mode>)
Pārbauda, vai ir noticis monotons vērtību pieaugums.
Atbalstītie vērtību tipi: Integer.
Atgriež: 1 - ja visi elementi laika periodā nepārtraukti palielinās; 0 - pretējā gadījumā.
Parametri:
- Skatiet kopīgos parametrus
- mode (jābūt dubultpēdiņās) - weak (katra vērtība ir lielāka vai tāda pati kā iepriekšējā; pēc noklusējuma) vai strict (katra vērtība ir palielinājusies)
Piemēri:
monoinc(/host/system.localtime,#3,"strict")=0 #the system local time has not been increasing consistently
monoinc(/host/vfs.dir.count[/mnt/data/logs],24h,"weak")=0 #trigger if the file count has stagnated over 24 hours (expected to grow)
nodata(/host/key,sec,<mode>)
Pārbauda, vai nav saņemti dati.
Atbalstītie vērtību tipi: Integer, Float, Character, Text, Log.
Atgriež: 1 - ja noteiktajā laika periodā dati nav saņemti; 0 - pretējā gadījumā.
Parametri:
- Skatiet kopīgos parametrus
- sec - periods nedrīkst būt mazāks par 30 sekundēm, jo vēstures sinhronizētāja process šo funkciju aprēķina tikai ik pēc 30 sekundēm;
nodata(/host/key,0)nav atļauts - mode - ja iestatīts uz strict (dubultpēdiņās), šī funkcija nebūs jutīga pret starpniekserveris pieejamību (sīkāku informāciju skatiet komentāros)
Komentāri:
- pēc noklusējuma starpniekserveris uzraudzītie 'nodata' trigeri ir jutīgi pret starpniekserveris pieejamību — ja starpniekserveris kļūst nepieejams, 'nodata' trigeri neaktivizēsies uzreiz pēc savienojuma atjaunošanas, bet izlaidīs datus par aizkavēto periodu.
Ņemiet vērā, ka pasīvajiem starpniekserveriem apspiešana tiek aktivizēta, ja savienojums tiek atjaunots vairāk nekā pēc 15 sekundēm un ne mazāk kā pēc 2 sekundēm.
Aktīvajiem starpniekserveriem apspiešana tiek aktivizēta, ja savienojums tiek atjaunots vairāk nekā pēc 15 sekundēm.
Lai izslēgtu jutību pret starpniekserveris pieejamību, izmantojiet trešo parametru, piemēram:
nodata(/host/key,5m,"strict"); šajā gadījumā funkcija aktivizēsies, tiklīdz būs pagājis novērtēšanas periods (piecas minūtes) bez datiem. - Šī funkcija parādīs kļūdu, ja 1. parametra periodā:
- nav datu un Zabbix serveris tika restartēts
- nav datu un apkope tika pabeigta
- nav datu un vienums tika pievienots vai atkārtoti iespējots. - Kļūdas tiek parādītas Info kolonnā trigera konfigurācijā.
- Šī funkcija var nedarboties pareizi, ja starp Zabbix serveris, starpniekserveris un aģents ir laika atšķirības. Skatiet arī: Laika sinhronizācijas prasība.
Piemērs:
nodata(/host/agent.ping,5m)=1 #trigeris, ja 5 minūtes nav saņemti dati no Zabbix aģents
percentile(/host/key,(sec|#num)<:time shift>,percentage)
P-tā procentile periodā, kur P (procenti) ir norādīti ar trešo parametru.
Atbalstītie vērtību tipi: Float, Integer.
Parametri:
- Skatiet kopīgos parametrus
- percentage — peldošā komata skaitlis no 0 līdz 100 (ieskaitot), ar ne vairāk kā 4 cipariem aiz komata
Piemēri:
percentile(/host/net.if.in[eth0,bytes],1h,95)>1000000 #95. procentile tīkla ienākošajai plūsmai (baiti/sek.) 1 stundas laikā ir pārsniegusi slieksni (piemēram, 1 MB/s)
percentile(/host/system.cpu.util,5m,95)>80 #95. procentile CPU noslodzes user-time procentuālajai vērtībai ir pārsniegusi 80
percentile(/host/icmppingsec[192.168.0.2],15m,95)>0.15 #lielākā daļa latentuma mērījumu ir zem 150 ms, bet augšējā aste (augšējie 5%) norāda uz regulāru aizturi
percentile(/host/net.if.in[eth0,bytes],1h,50) #aprēķināt 50. procentili (mediānas vērtību) ienākošajai tīkla plūsmai stundas laikā; tas dod atšķirīgu rezultātu no avg() (vidējās vērtības), jo percentile neņem vērā ārpusnieku vērtības
(percentile(/host/net.if.in[eth0,bytes],1h,50)+percentile(/host/net.if.in[eth0,bytes],1h,51))/2 #aprēķināt precīzu mediānas vērtību pāra vērtību skaitam stundas laikā
rate(/host/key,sec<:time shift>)
Monotoni pieaugoša skaitītāja vidējais pieaugums sekundē noteiktajā laika periodā.
Atbalstītie vērtību tipi: Float, Integer.
Parametri:
- Skatiet kopīgos parametrus
Funkcionāli atbilst PromQL funkcijai 'rate'.
Piemēri:
rate(/host/key,30s) #ja monotons pieaugums 30 sekunžu laikā ir 20, šī funkcija atgriež 0.67.
rate(/host/net.if.in[eth0,bytes],5m)>500000 #ienākošās saskarnes datplūsmas ātrums uz eth0 pēdējo 5 minūšu laikā ir pārsniedzis 500 KB/s
rate(/host/app.requests.count,1m)>100 #pieprasījumu skaitītājs pēdējās minūtes laikā ir pieaudzis par >100 pieprasījumiem sekundē
Skatiet visas atbalstītās funkcijas.