常用告警
Linux key
CPU 使用率
system.cpu.util[,user]
DISK 使用率
100*(last("vfs.fs.size[{#FSNAME},used]"))/last("vfs.fs.size[{#FSNAME},total]")
MEM swap使用率
100-avg("system.swap.size[,pfree]",60)
MEM 使用率
vm.memory.size[pused] # active + wired 总内存的百分比pused=(total -freee)/total %
Process nginx
proc.num[,,,"nginx"]
proc.num
windows key
CPU UTL
perf_counter["\Processor Information(_Total)\% Processor Time"]
Process aaa
service.info["aaa"]
对于Windows server监控需要取server名称
1:打开任务管理器,找到services,找到需要监控的process点击它,然后鼠标右键点击 go to details
2:跳转到details后点击process,右键点击properties
下面红框内值则是zabbix 监控需要的key
trigger: key使用 min(#3)<>0 #因为item取值是running(0),不为0就会告警
Calculated计算类型
内存
对于监控项,有些监控数据zabbix模板里并没有,但是我们可以通过计算获取到为们想要的数据
比如:Memory 模板里有total,available,并没有使用里多少,所以我们可以通过计算得到Memory的使用率
公式: 100*(total - available) /total
实际应用例如下面的:
100*(avg("vm.memory.size[total]",60)-avg("vm.memory.size[available]",60))/avg("vm.memory.size[total]",60)
强调下,只能对已存在的item进行计算,不存在的item无法计算,计量单位不同也无法计算
avg/last区别在于,last最后一次的值,当主机down了,memory 可能还是会存在数据,对做报告有影响,使用avg平均值就不会存在该问题
avg(“”,60)
在双引号里面填入内容,60是时间间隔60s,必须要添加时间间隔
另外这里的时间间隔,不能小于item本身的时间间隔
目前我所需要计算的常用item有 磁盘,内存设置起来大同小异,对已存在的item计算就完事了
配置完成要等待一会,它会有数据不足的报错,等一会就好了
计量单位(Numeric数字),如果是百分比使用float(浮点数带单位% ),类似进程类的使用unsigned(未定义)或者text
filesystem
Disk 使用率需要进行计算,另外Key需