1 Apkopojošās funkcijas
Ja nav norādīts citādi, visas šeit uzskaitītās funkcijas tiek atbalstītas:
Apkopojošās funkcijas var darboties ar:
- vienumu vēsturi, piemēram,
min(/host/key,1h) - foreach funkcijām kā
vienīgo parametru, piemēram,
min(last_foreach(/*/key))(tikai aprēķinātajos vienumos; nevar izmantot tieši trigeros)
Funkcijas ir uzskaitītas bez papildu informācijas. Noklikšķiniet uz funkcijas, lai skatītu pilnu informāciju.
| Function | Description |
|---|---|
| avg | Vienuma vidējā vērtība noteiktajā novērtēšanas periodā. |
| bucket_percentile | Aprēķina procentili no histogrammas spaiņiem. |
| count | Vērtību skaits masīvā, ko atgriež foreach funkcija. |
| histogram_quantile | Aprēķina φ-kvantiļu no histogrammas spaiņiem. |
| item_count | Esošo vienumu skaits konfigurācijā, kas atbilst filtra kritērijiem. |
| kurtosis | Savākto vērtību varbūtības sadalījuma "astes smagums" noteiktajā novērtēšanas periodā. |
| mad | Savākto vērtību mediānā absolūtā novirze noteiktajā novērtēšanas periodā. |
| max | Augstākā vienuma vērtība noteiktajā novērtēšanas periodā. |
| min | Zemākā vienuma vērtība noteiktajā novērtēšanas periodā. |
| skewness | Savākto vērtību varbūtības sadalījuma asimetrija noteiktajā novērtēšanas periodā. |
| stddevpop | Savākto vērtību populācijas standartnovirze noteiktajā novērtēšanas periodā. |
| stddevsamp | Savākto vērtību izlases standartnovirze noteiktajā novērtēšanas periodā. |
| sum | Savākto vērtību summa noteiktajā novērtēšanas periodā. |
| sumofsquares | Savākto vērtību kvadrātu summa noteiktajā novērtēšanas periodā. |
| varpop | Savākto vērtību populācijas dispersija noteiktajā novērtēšanas periodā. |
| varsamp | Savākto vērtību izlases dispersija noteiktajā novērtēšanas periodā. |
Kopējie parametri
/host/keyir kopīgs obligāts pirmais parametrs funkcijām, kas atsaucas uz hosts vienuma vēsturi(sec|#num)<:time shift>ir kopīgs otrais parametrs funkcijām, kas atsaucas uz hosts vienuma vēsturi, kur:- sec - maksimālais izvērtēšanas periods sekundēs (var izmantot laika sufiksus), vai
- #num - maksimālais izvērtēšanas diapazons pēdējās savāktajās vērtībās (ja priekšā ir hash zīme)
- time shift (neobligāts) ļauj pārvietot izvērtēšanas punktu atpakaļ laikā. Skatiet papildu informāciju 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
<> - Katrai funkcijai specifiskie parametri ir aprakstīti pie attiecīgās funkcijas
- Parametri
/host/keyun(sec|#num)<:time shift>nekad nedrīkst būt pēdiņās
avg(/host/key,(sec|#num)<:time shift>)
Vienuma vidējā vērtība noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītās foreach funkcijas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.
Parametri: skatiet kopējos parametrus.
Laika nobīde ir noderīga, ja nepieciešams salīdzināt pašreizējo vidējo vērtību ar vidējo vērtību pirms kāda laika.
Piemēri:
avg(/host/key,1h) #vidējā vērtība par pēdējo stundu līdz šim brīdim
avg(/host/key,1h:now-1d) #vidējā vērtība par stundu no 25 stundām līdz 24 stundām pirms šī brīža
avg(/host/key,#5) #pēdējo piecu vērtību vidējā vērtība
avg(/host/key,#5:now-1d) #pēdējo piecu vērtību vidējā vērtība, izslēdzot vērtības, kas saņemtas pēdējo 24 stundu laikā
avg(/host/proc.num,5m)>300 #trigeris, ja procesu vidējais skaits pēdējo 5 minūšu laikā ir bijis virs 300
bucket_percentile(item filter,time period,percentage)
Aprēķina procentili no histogrammas spaiņiem.
Parametri:
- item filter - skatiet item filter;
- time period - skatiet time period;
- percentage - procentuālā vērtība (0-100).
Piezīmes:
- Atbalstīts tikai aprēķinātajos vienumos;
- Šī funkcija ir aizstājvārds funkcijai
histogram_quantile(percentage/100, bucket_rate_foreach(item filter, time period, 1)).
Piemēri:
bucket_percentile(/*/http_request_duration_seconds_bucket[*],5m,95) #aprēķina 95. procentiles atbildes laiku 5 minūšu periodā
bucket_percentile(/*/apiserver_request_duration_seconds_bucket[*],10m,99) #aprēķina 99. procentiles API latentumu
count(func_foreach(item filter,<time period>),<operator>,<pattern>)
Vērtību skaits masīvā, ko atgriež foreach funkcija.
Atbalstītās foreach funkcijas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.
Parametri:
- func_foreach - foreach funkcija, kurai jāskaita atgriezto vērtību skaits. Sīkāku informāciju skatiet foreach functions. Ņemiet vērā, ka count_foreach un bucket_rate_foreach atbalsta papildu parametrus.
- item filter - skatiet item filter;
- time period - skatiet time period;
- operator (jābūt ietvertam dubultpēdiņās). Atbalstītie
operators:
eq - vienāds
ne - nav vienāds
gt - lielāks
ge - lielāks vai vienāds
lt - mazāks
le - mazāks vai vienāds
like - atbilst, ja satur paraugu (reģistrjutīgs)
bitand - bitu līmeņa 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 paraugs (string argumentiem jābūt ietvertiem dubultpēdiņās); atbalstīts, ja trešajā parametrā ir norādīts operator.
Komentāri:
- Izmantojot count() kopā ar ar vēsturi saistītu foreach funkciju (max_foreach, avg_foreach u. c.), var rasties veiktspējas ietekme, savukārt, izmantojot exists_foreach(), kas darbojas tikai ar konfigurācijas datiem, šādas ietekmes nebūs.
- Neobligātos parametrus operator vai pattern nevar atstāt tukšus pēc komata; tos var tikai pilnībā izlaist.
- Ja trešais parametrs ir bitand, ceturto
patternparametru var norādīt kā divus skaitļus, kas atdalīti ar '/': number_to_compare_with/mask. count() aprēķina "bitu līmeņa AND" starp vērtību un mask un salīdzina rezultātu ar number_to_compare_with. Ja "bitu līmeņa 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 trešais parametrs ir 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ālo regulāro izteiksmju iestatījumiem. Regexp atbilstības noteikšanai peldošā komata vērtības vienmēr tiks attēlotas ar 4 decimāldaļām aiz '.'. Ņemiet vērā arī to, ka lieliem skaitļiem atšķirība decimālajā (datubāzē glabātajā) un binārajā (Zabbix serveris izmantotajā) attēlojumā var ietekmēt 4. decimāldaļu.
Piemēri:
count(max_foreach(/*/net.if.in[*],1h)) #aprēķina net.if.in vienumu skaitu, kas saņēmuši datus pēdējās stundas laikā līdz šim brīdim
count(last_foreach(/*/vfs.fs.size[*,pused]),"gt",95) #aprēķina failu sistēmu skaitu, kurās izmantoti vairāk nekā 95% diska vietas
histogram_quantile(quantile,bucket1,value1,bucket2,value2,...)
Aprēķina φ-kvantiļu no histogrammas spaiņiem.
Atbalstīta foreach funkcija: bucket_rate_foreach.
Parametri:
- quantile - 0 ≤ φ ≤ 1;
- bucketN, valueN - manuāli ievadīti parametru pāri (>=2) vai bucket_rate_foreach atbilde.
Piezīmes:
- Atbalstīta tikai aprēķinātajos vienumos;
- Funkcionāli atbilst PromQL funkcijai 'histogram_quantile';
- Atgriež -1, ja pēdējā 'Infinity' spaiņa ("+inf") vērtības ir vienādas ar 0.
Piemēri:
histogram_quantile(0.75,1.0,last(/host/rate_bucket[1.0]),"+Inf",last(/host/rate_bucket[Inf]))
histogram_quantile(0.5,bucket_rate_foreach(//item_key,30s))
item_count(item filter)
Konfigurācijā esošo vienumu skaits, kas atbilst filtra kritērijiem.
Atbalstītais vērtības tips: Integer.
Parametrs:
- item filter - vienumu atlases kritēriji, ļauj norādīt pēc host grupas, hosta, vienuma atslēgas un tagiem. Tiek atbalstīti aizstājējzīmes. Plašāku informāciju skatiet item filter.
Piezīmes:
- Atbalstīts tikai aprēķinātajos vienumos;
- Darbojas kā aizstājvārds funkcijai count(exists_foreach(item_filter)).
Piemēri:
item_count(/*/agent.ping?[group="Host group 1"]) #hostu skaits ar *agent.ping* vienumu "Host group 1"
kurtosis(/host/key,(sec|#num)<:time shift>)
Varbūtību sadalījuma "astes" izteiktība savāktajās vērtībās noteiktajā novērtēšanas periodā. Skatiet arī: Kurtosis.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet common parameters.
Piemēri:
kurtosis(/host/system.cpu.util[,user],5m)>5 #trigger on sharp spikes of CPU utilization over 5 minutes
mad(/host/key,(sec|#num)<:time shift>)
Mediānais absolūtais novirzes rādītājs savāktajās vērtībās noteiktajā novērtēšanas periodā. Skatiet arī: Mediānais absolūtais novirzes rādītājs.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītās foreach function: last_foreach.
Parametri: skatiet common parameters.
Piemēri:
last(/host/system.cpu.util[,user])>avg(/host/system.cpu.util[,user],1h)+3*mad(/host/system.cpu.util[,user],1h) #trigeris if the last CPU utilization value is statistically significant
max(/host/key,(sec|#num)<:time shift>)
Vienuma augstākā vērtība noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītās foreach functions: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.
Parametri: skatiet common parameters.
Piemēri:
max(/host/key,1h) - min(/host/key,1h) #aprēķina starpību starp maksimālo un minimālo vērtību pēdējās stundas laikā līdz šim brīdim (vērtību delta)
max(last_foreach(/*/vfs.fs.size[*,pused]?[group="Linux servers"])) #atgriež lielāko diska lietojumu visos Linux serveros
min(/host/key,(sec|#num)<:time shift>)
Vienuma zemākā vērtība noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītās foreach funkcijas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.
Parametri: skatiet kopīgos parametrus.
Piemēri:
max(/host/key,1h) - min(/host/key,1h) #aprēķina starpību starp maksimālo un minimālo vērtību pēdējās stundas laikā līdz šim brīdim (vērtību delta)
min(last_foreach(/*/vfs.file.contents["/sys/class/net/enp0s3/operstate"]?[group="Linux servers"])) #atgriež jebkura interfeisa minimālo darbības stāvokli visos Linux serveros
skewness(/host/key,(sec|#num)<:time shift>)
Varbūtību sadalījuma asimetrija savāktajās vērtībās noteiktajā novērtēšanas periodā. Skatiet arī: Skewness.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet common parameters.
Piemēri:
skewness(/host/vm.memory.size[used],5m)<-20 #trigger on sudden negative drops indicating crashes/restarts
stddevpop(/host/key,(sec|#num)<:time shift>)
Populācijas standartnovirze savāktajās vērtībās noteiktajā novērtēšanas periodā. Skatiet arī: Standartnovirze.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet kopīgos parametrus.
Piemēri:
stddevpop(/host/system.cpu.util[,user],10m)>7 #CPU lietojums svārstās ļoti strauji (populācijas standartnovirze ir virs 7)
stddevsamp(/host/key,(sec|#num)<:time shift>)
Izlases standartnovirze savāktajās vērtībās noteiktajā novērtēšanas periodā. Skatiet arī: Standartnovirze.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet kopīgos parametrus.
Šai funkcijai ir nepieciešamas vismaz divas datu vērtības.
Piemēri:
stddevsamp(/host/system.cpu.util[,user],10m)>7 #CPU lietojums būtiski svārstās (izlases standartnovirze ir virs 7)
sum(/host/key,(sec|#num)<:time shift>)
Savākto vērtību summa noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītās foreach functions: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.
Parametri: skatiet common parameters.
Piemēri:
sum(last_foreach(/*/net.if.in[*]?[group="Linux servers"])) #pēdējo vērtību summa ienākošā tīkla trafika datiem visos Linux serveros
sumofsquares(/host/key,(sec|#num)<:time shift>)
Savākto vērtību kvadrātu summa noteiktajā novērtēšanas periodā.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet kopīgos parametrus.
Piemēri:
sumofsquares(/host/calculated.net.if.rate,1m) #tīkla trafika ātruma kvadrātu summa (ienākošais pret izejošo)
sumofsquares(last_foreach(/*/net.if.in[*]?[group="Linux servers"])) #jaunāko ienākošā tīkla trafika vērtību kvadrātu summa visiem Linux serveriem
varpop(/hosts/key,(sec|#num)<:time shift>)
Savākto vērtību populācijas dispersija noteiktajā novērtēšanas periodā. Skatiet arī: Dispersija.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet kopīgos parametrus.
Piemēri:
varpop(/hosts/system.cpu.util[,user],10m)>50 #CPU lietojums svārstās stipri (dispersija ir virs 50)
varsamp(/hosts/key,(sec|#num)<:time shift>)
Savākto vērtību izlases dispersija noteiktajā novērtēšanas periodā. Skatiet arī: Variance.
Atbalstītie vērtību tipi: Float, Integer.
Atbalstītā foreach function: last_foreach.
Parametri: skatiet common parameters.
Šīs funkcijas darbībai ir nepieciešamas vismaz divas datu vērtības.
Piemēri:
varsamp(/hosts/system.cpu.util[,user],10m)>50 #CPU lietojums būtiski svārstās (izlases dispersija ir virs 50)
Skatiet visas atbalstītās funkcijas.