5、自定义触发器
版权声明:原创作品,谢绝转载!否则将追究法律责任。 ————— 作者:kirin
光有监控项,是不能报警的。如何设置一个报警的条件?这就需要用到触发器这个功能了
触发器:设置一个报警条件
一个触发器至少对应一个监控项、可以关联多个
触发器表达式 功能
| 功能(函数) | |
|---|---|
| last() | 最近值 (最新的值) |
| nodata() | 是否有数据 |
| diff() | 是否发生变化 一般配合md5check() |
| avg() | 平均值 |
| min() | 最小值 |
| max() | 最大值 |
触发器表达式的格式:


例子1:
{10.0.0.8:vfs.file.cksum[/etc/passwd].diff()}>0
主机:10.0.0.7
key值:vfs.file.cksum[/etc/passwd]
函数方法:diff() 对比两次监控项的值
例子2:
{10.0.0.8:proc.num.last()}/{10.0.0.8:kernel.maxproc.las
t()}*100>80
10.0.0.8:proc.num:当前运行进程
10.0.0.8:kernel.maxproc 系统最大允许进程的数量
函数方法:last() 最新值
例子3:
{10.0.0.8:vm.memory.size[available].min(5m)}
<{$MEMORY.AVAILABLE.MIN} and
{10.0.0.8:vm.memory.size[total].last()}>0
函数方法 mim(5m),max(5m),avg(5m)
{$MEMORY.AVAILABLE.MIN}=20m
and 同时
10.0.0.8:vm.memory.size[total] 最新的总内存大小
#值的定义在如下操作



系统默认是20M
8.1.自定义触发器表达(没有命令行的操作了哦全是鼠标点点点~)



单条件
{10.0.0.8:nginx_status.last()}=0
多条件
{10.0.0.8:disk_free.last()}<100M and {10.0.0.8:disk_free_per.last()}<3








#接下来去停止web01-10.0.0.7的nginx服务
[root@web01 ~]# systemctl stop nginx.service


#接下来在于启动web01-10.0.0.7的nginx服务
[root@web01 ~]# systemctl start nginx.service
#再次刷新监控界面


本文来自博客园,作者:kirin(麒麟),转载请注明原文链接:https://www.cnblogs.com/kirin365/articles/16137740.html

浙公网安备 33010602011771号