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用户

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

  1. 运维监控-使用Zabbix Server 创建触发器Triggers

    运维监控-使用Zabbix Server 创建触发器Triggers  作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1>.点击相应主机的触发器 2>.点击创建触发器 ...

  2. zabbix WebUI自定义Nginx监控项模板

    zabbix webUI自定义Nginx监控项模板 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.创建模板 1>.如下图所示,依次点击"配置" --- ...

  3. zabbix 自动发现主机并关联模板

    一.自动发现添加主机 1.利用agent自动发现主机 Configuration - Discovery -Create discovery rule 2.将自动发现的主机关联模板 Configura ...

  4. Zabbix 配置监控 & 触发器

    Zabbix 自定义监控 zabbix-agent 获取数据,然后定义,交给 zabbix-server 端 Zabbix 配置监控项 监控的内容 # 监控服务器登录用户的数量 [root@web01 ...

  5. zabbix使用percona的mysql监控模板监控

    安装第三方插件仓库源: [root@iZ9j3yrx43sb5sZ ~]# yum install https://www.percona.com/redir/downloads/percona-re ...

  6. zabbix客户端的安装、zabbix主被动模式、添加主机模板等、处理页面的中文乱码

    1.zabbix客户端的安装: 如下步骤: wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch. ...

  7. Zabbix trigger(触发器)设置

    设置一个监控项–进站包数,当进站包数>50触发器报警. 先设置一个进站包数的监控项(item):

  8. 03: zabbix API接口 对 主机、主机组、模板、应用集、监控项、触发器等增删改查

    目录:Django其他篇 01: 安装zabbix server 02:zabbix-agent安装配置 及 web界面管理 03: zabbix API接口 对 主机.主机组.模板.应用集.监控项. ...

  9. python调用zabbix接口实现Action配置

    要写这篇博客其实我的内心是纠结的,老实说,我对zabbix的了解实在不多.但新公司的需求不容置疑,当我顶着有两个头大的脑袋懵懵转入运维领域时,面前摆着两百多组.上千台机器等着写入zabbix监控的需求 ...

随机推荐

  1. python代码风格规范

    类注释模板: :: class AnotherClass: """ 类注释 """ def method(self, arg1, arg2, ...

  2. 十个iOS面试问题

    十个iOS面试问题 十个iOS面试问题.不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的好机会. ...

  3. [Codeforces Round #237 (Div. 2)] A. Valera and X

    A. Valera and X time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...

  4. oracle starup报错

    今天在linux里面安装Oracle的时候出现一个报错,忽略报错安装之后,数据库启动的时候报错: 从网上找到的解决方法: 创建实例后,进入sqlplus启动报错: sqlplus / as sysdb ...

  5. ListView 实现分组

    1:FragmentHack4.java /** * Created by y on 15-1-2. */ public class FragmentHack4 extends Fragment{ V ...

  6. Keil C51处理可重入函数问题的探讨

    在程序设计中,变量具体可以分为四种类型:全局变量.静态全局变量.局部变量.静态局部变量.这几种变量类型对函数的可重入产生的重大的影响,因为不同的编译器采用不同的策略. 针对51的存储区有限,keil ...

  7. 《Programming WPF》翻译 第8章 3.Storyboard

    原文:<Programming WPF>翻译 第8章 3.Storyboard Storyboard是动画的集合.如果你使用了标记,所有的动画必须要被定义在一个Storyboard中.(在 ...

  8. Swing透明和变换

    以前或许大家对一个UI组件是否透明没有那么关心,但是自从Vista的毛玻璃出现后,UI透明就成了大家非常关注的一个话题,于是Java阵营开始了铺天盖地的讨论如何实现透明的效果,但是很不幸的是无论组件如 ...

  9. Razor Generator 将cshtml自动生成对应的CS文件

  10. softlayer virtual machine vhd磁盘镜像导入shell脚本

    脚本