zabbix之3触发器/action及模板

1.触发器:

{server_name:item_name.func.operator.condition}

一旦condition(条件)触发,则item状态改变

触发器之间可以存在依赖关系,即itemA触发,则itemB也触发.

2.动作action

action是触发器触发后,应该采取的动作.

其中动作除了可以详细设定执行的动作(如发邮件,重启服务)外,还可以设定触发的第二条件,如维护期间不执行,仅为触发器的执行.

最重要的是动作可以升级,如动作执行多少次后,触发器依然没有恢复,则执行下一步动作.例如邮件从发送给管理员-->CTO

4.宏设置

宏其实就类似于变量.分为全局宏和局部宏

全局宏在管理-通用-分类(宏)

局部宏在各个模板中定义.

5.

5-1.自定义items_key

tiems_key分为带参数和不带参数,格式:UserParameter=itemkey,command

不管是带参还是不带参数,都是在客户端的zabbix_agentd.conf或者zabbix_agentd.conf.d目录中建立新的*.conf来定义,如果是在conf.d目录中定义,则需要修改zabbix_agentd.conf中include选项(默认include选项路径是/usr/local/etc/zabbix_agentd.conf.d)

添加任何的key都需要重启zabbix_agentd服务.

不带参数犹如如下例子所示:

UserParameter=memory.free,/usr/bin/free
| awk ‘/^Mem:/{print $4}‘

不管是带参数和不带参数,其命令返回值只能存在一个且必须小于512字节,否则zabbix_server无法接收.

带参数犹如如下例子所示:

UserParameter=key(*),command

这里的*可以调用server端key()括号中所写的匹配项,而command可以通过$1,$2依次调用*的参数,不过,如果command自身就包含了$1和$2,比如awk的print
$1,那么这些$1和$2需要转变为$$1,$$2.

5-2.测试key的可用性,在zabbix_server端使用zabbix_get命令

zabbix_get -s agentd_IP -k "key_name"

# zabbix_get -s 127.0.0.1 -k
"voice.exist[10.88.5.8,Voice]"
1

在zabbix_agentd端使用zabbix_agentd

# zabbix_agentd -t
voice.exist[10.88.5.8,Voice]
voice.exist[10.88.5.8,Voice]    
             [t|1]

附:

nginx_status监控($1是nginx网址ip,$2是端口)

UserParameter=Nginx.active[*],/usr/bin/curl
-s "http://$1:$2/status" | awk
‘/^Active/{print $NF}‘
UserParameter=Nginx.accepted[*], /usr/bin/curl -s "http://$1:$2/status"
| awk ‘/^ /{print
$$1}‘
UserParameter=Nginx.handld[*], /usr/bin/curl -s "http://$1:$2/status"
| awk ‘/^ /{print
$$2}‘
UserParameter=Nginx.request[*], /usr/bin/curl -s "http://$1:$2/status"
| awk ‘/^ /{print
$$3}‘
UserParameter=Nginx.read[*], /usr/bin/curl -s "http://$1:$2/status"
 | awk ‘/^Read/{print
$$2}‘
UserParameter=Nginx.write[*], /usr/bin/curl -s "http://$1:$2/status"
 | awk ‘/^Read/{print
$$4}‘
UserParameter=Nginx.wait[*], /usr/bin/curl -s "http://$1:$2/status"
 | awk ‘/^Read/{print
$$6}‘

windows进程状态监控,需要配合snmp($1是win主机IP,$2是进程名)

#!/bin/bash

#/usr/local/zabbix/share/zabbix/externalscripts/win_process_exist.sh

process=`snmpwalk -v 2c -c jzzz $1
.1.3.6.1.2.1.25.4.2.1.2 | awk ‘/‘$2‘/{print $NF}‘`
if [[
$process == ‘‘
]];then
    echo
0;
    else
    echo 1;
fi

# cat
/etc/zabbix/zabbix_agentd.conf.d/win_process.conf
UserParameter=voice.exist[*],/usr/local/zabbix/share/zabbix/externalscripts/win_process_exist.sh $1
$2

自定义脚本,用zabbix_get获取数据,发现值为空

查看脚本是否授权给了zabbix用户

来自为知笔记(Wiz)

zabbix之3触发器/action及模板,布布扣,bubuko.com

时间: 2024-10-18 04:38:40

zabbix之3触发器/action及模板的相关文章

深入浅出Zabbix 3.0 -- 第七章 模板配置与管理

第七章  模板配置与管理 我们在主机中不仅可以添加很多需要监控的指标(即监控项),还可以添加图形.触发器.监控项组.展示屏.Web scenarios和low-level Discovery,如果在每个主机中添加这些对象,尤其是在一个大型环境中,其工作量是不可想象的,何况需要监控的主机有很多具有相同的监控属性,需要重复相同的配置工作,如果手工完成这些配置任务几乎是不可能的.好在Zabbix为我们提供了模板,通过在不同的模板中添加监控项.触发器.图形等配置并应用到任意数量的主机上.当然对于特殊的监

zabbix监控添加主机,添加模板,处理图形中的乱码,自动发现

添加主机 优先添加主机群组,配置-添加主机群组主机-添加主机-群组-选择刚刚创建的 群组,ip地址填写客户端IP, 添加自定义模板, 模板-添加-创建主机名-添加到组添加一个模板名称aming 在模板下选择一个想要监控的的项目,复制过来我们选择Linux OS模板这一项复制想要选择的监控项目 点击复制后,目标类型选择模板,群组选择模板,目标选择aming应用后,查看模板,主机名,就能看到aming 主机已经有了9个监控项,这9个监控项也就是刚才复制linux os 的那9个监控项. 设置amin

Zbbix4.0(二)基础主机监控,添加触发器,使用模板,管理用户组等

Zabbix主机添加顺序:添加主机组 ---->添加主机----->根据监控项目可添加图形或者触发器 1,添加主机组 2,添加主机 ##注意添加进刚才创建的组,和主机的IP 地址 根据接口支持多种添加方式:agent:zabbix提供一个agent客户端,可装在Linux.Windows等snmp:使用snmp协议去监控服务器.交换机.路由器等jmx:方便我们去监控java进程ipmi:监控硬件信息 3,zabbinx 添加简单监控项目(zabbix 监控形式是根据key vlaue的形式)

Linux zabbix IO监控 步骤脚本和模板

Linux zabbix IO监控 监控原理 通过定时监控iostata -dx 1 输出数据采集硬盘IO 1.服务器安装 yum install sysstat #iostat 工具安装 2.设置本机计划任务 crontab -e */3 * * * *  /usr/bin/iostat -dxkt 1 500 >/tmp/iostat_output 3.增加监控脚本 mkdir  /etc/zabbix/scripts #上传硬盘发现脚本 disk_discovery.sh #上传硬盘脚本

通过Zabbix API 为主机添加监控模板

脚本内容如下: #!/usr/bin/python #-*- coding:utf8 -*- import json,sys,argparse from zabbix_api import ZabbixAPI server = "http://172.16.206.128/zabbix" username = "Admin" password = "zabbix" zapi = ZabbixAPI(server=server, path=&quo

zabbix添加主机并创建监控模板

主动模式和被动模式 被动模式,服务器端会主动连接客户端获取监控数据,客户端被动地接受,并把数据传递给服务器端主动模式,客户端主动把监控数据汇总然后再汇报给客户端,服务端只负责接收数据当客户端数量非常多的时候,建议使用主动模式,因为服务器不再会去所有客户机上请求回报数据,这样降低服务端的压力当客户端没有公网IP地址时,而又需要监控内网的客户端的时候,这时候适用主动模式,因为客户端能够访问到公网服务器的IP,反过来服务器不能和服务端通信,这就需要客户端把监控数据要主动发给服务端,这里就非常适合适用主

使用zabbix 2.4 监控mysql----自带模板

环境:centos 6.5,mysql 5.6,zabbix 2.4.4 1.在mysql中添加zabbix用户 mysql -uroot -p -e "GRANT USAGE ON *.* TO 'zabbix'@'127.0.0.1' IDENTIFIED BY 'zabbix'"; mysql -uroot -p -e "GRANT USAGE ON *.* TO 'zabbix'@'localhost' IDENTIFIED BY 'zabbix'"; my

zabbix之 定义触发器(4)

定义触发器 configuration --> hosts --> trigger

自动化运维工具之Zabbix触发器_action动作及模板应用(二)

一个完善的监控系统需要一定的报警机制,什么时候告警警需要触发器,怎么告警,在什么情况下如何告警取决于action动作: 创建触发器(trigger) **"监控项"仅负责收集数据,而通常收集数据的目的还包括在某指标对应的数据超出合理范围时给相关人员发送告警信息,"触发器"正是用于为监控项所收集的数据定义阈值. **每个触发器仅能关联至一个监控项,但可以为一个监控项或同时使用多个触发器: 事实上,为一个监控项定义多个具有不用阈值的触发器,可以实现不用级别的报警功能 *