At first, you need to have host group collections which contain the same applications as:
Windows Servers
Linux Servers
Raspberry Pis
MySQL servers
servers with nginxHow it works?The machines inside these groups have something in common and that is already gathered value which belongs to some specific item key. This keys must identical between hosts. This creates the ability for the aggregate item to be calculated. Luckily for us, these keys can lie on hosts natively or through template.
The hardest thing about aggregate checks is to have some guts to create a dummy host with IP 0.0.0.0
This host needs to be assigned to group "Aggregate checks" which will be only used for future someday to list your all generated aggregate checks:

Group hosts together:

Make sure the item key 1:1 exists on all hosts
Deside which item value you are interested the most:
avg,30m
count,20m
last,0
last,#1
max,1h
min,1h
sum,10m
grpavg
grpmax
grpmin
grpsumExamples:grpsum["Raspberry Pi","vm.memory.size[available]",last,0]
grpsum["Raspberry Pi","proc.num[]",last,0]
grpsum["Raspberry Pi","proc.num[,,run]",last,0]
grpsum["Windows Workstation","vfs.fs.size[C:,used]",last,0]Demo template:Explanation..I have to machines:

