Az összesített számítások egy [számított elem] (/manual/config/items/itemtypes/calculated) típus, amely lehetővé teszi, hogy több elemről információkat gyűjtsön a Zabbix szerver és majd számítson ki egy aggregátumot a használt összesítő függvénytől függően.
Csak előjel nélküli egész és lebegő értékek (információtípus) támogatottak az összesített számításhoz tételeket.
Az összesített számításokhoz nincs szükség a gazdagépen futó ügynökre figyelemmel kísérik.
Az aggregátumok lekéréséhez a következőket teheti:
aggregate_function(function(/host/key,parameter),function(/host2/key2,parameter),...)
Vegye figyelembe, hogy a "function" itt egy előzmény/trend függvény kell, hogy legyen.
aggregate_function(foreach_function(/host/key?[group="host group"],timeperiod))
Az összesítő függvény a támogatott [összesítő függvények] (/manual/appendix/functions/aggregate#aggregate-functions-1) egyike: avg, max, min, sum, stb.
A foreach függvény (pl. avg_foreach, count_foreach stb.) minden kiválasztott elemhez egy összesített értéket ad vissza. A tételek kiválasztása az elemszűrő (/host/key?[group="host group"]
) használatával történik az elemelőzményekből.
Ha egyes tételeknél nincs adat a kért időszakra vonatkozóan, akkor azokat figyelmen kívül hagyja a számítás során. Ha nincs tétel adatokat, a függvény hibát ad vissza.
További részletekért lásd: foreach functions.
Ha az aggregátum lebegő értéket eredményez, akkor a rendszer levágja egész számra, ha az összesített elemtípus információ Numeric (aláírás nélküli).
Előfordulhat, hogy az összesített számítás nem támogatott, ha:
Példák az összesített számítások kulcsaira.
A „MySQL Servers” gazdagépcsoport teljes lemezterülete.
A net.if.in[*] fájlnak megfelelő összes elem legutóbbi értékeinek összege a gazdagépen.
A „MySQL Servers” gazdagépcsoport átlagos processzorterhelése.
A lekérdezések másodpercenkénti számának 5 perces átlaga a fogadócsoport számára "MySQL szerverek".
Átlagos CPU terhelés az összes gazdagépen több gazdagépcsoportban, amelyek rendelkeznek a konkrét címkék.
avg(last_foreach(/*/system.cpu.load?[(group="A szerverek" vagy group="B szerverek" vagy group="C szerverek") és (tag="Szolgáltatás:" vagy tag="Fontos: Magas")]))
A teljes gazdagépcsoport legfrissebb tételértékeinek összegére használt számítás.
sum(last_foreach(/*/net.if.out[eth0,bytes]?[group="video"])) / sum(last_foreach(/*/nginx_stat.sh[active]?[group="video"]) )
A nem támogatott elemek teljes száma a „Zabbix szerverek” gazdagépcsoportban.
A kifejezések (beleértve a függvényhívásokat is) nem használhatók előzményként, trendként vagy foreach function paraméterként. Maguk a függvények azonban más (nem történelmi) függvényparaméterekben is használhatók.
Kifejezés | Példa |
---|---|
Érvényes | átlag(utolsó(/gazda/kulcs1),utolsó(/gazdagép/kulcs2)*10,utolsó(/gazda/kulcs1)*100) max(átl.(átl._foreach(/*/rendszer. cpu.load?[group="A kiszolgálók"],5m)),átl. system.cpu.load?[group="C-szerverek"],5m))) |
Érvénytelen | sum(/host/key,10+2) sum(/host/key, avg(10,2)) sum(/host/key,last(/host) /kulcs2)) |
Vegye figyelembe, hogy egy olyan kifejezésben, mint:
nem garantálható, hogy az egyenlet mindkét részének mindig ugyanaz az értékkészlete lesz. Amíg a kifejezés egy része kiértékelésre kerül, a kért időszakra új érték érkezhet, és akkor a kifejezés másik részének más értékkészlete lesz.