转自:http://www.cnblogs.com/miclesvic/p/6164303.html

1、在zabbix_agent端zabbix_agentd.conf配置文件中增加自定义Key(/usr/local/zabbix_agent/etc/zabbix_agentd.conf)

### Option: UserParameter
# User-defined parameter to monitor. There can be several user-defined parameters.
# Format: UserParameter=<key>,<shell command>
# See 'zabbix_agentd' directory for examples.
#
# Mandatory: no接
# Default:
# UserParameter= UserParameter=Physical_cpu_0_temperature,sensors|grep "id 0"|awk '{print $4}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
     变量    Key                                命令

就样一个自定义的Key就完成了,那么我们要怎么来测试这个Key是否生效了呢?配置文件修改完成后需要重启zabbix_agentd端的服务,然后在zabbix_server端通过zabbix_get查看,是否可以获取到值,如果获取到值,表明这个Key就设置成功了。

设置完Key一定记得要通过命令进行验证啊!!!
# zabbix_get -s 10.16.1.201 -p 10050 -k Physical_cpu_0_temperature
59.0

我们看下,CPU的温度已经可以正常获取了,我们的key就设置成功了!

说了第一种定义Key的方法,是在zabbix_agend.conf的主配置文件中修改,大家可以想想,如果需要定义100个Key的话,都写在主配置文件里,是不是主配置文件会很乱啊,那我们来看看有什么更好的方法呢,接下来看看第二种方法吧!

2、将Key定义在独立的文件中,然后在主配置文件中进行新引用就好了,下面我们来配置下。

2.1 修改zabbix_agentd.conf 配置(/usr/local/zabbix_agent/etc/zabbix_agentd.conf)

cat /usr/local/zabbix_agent/etc/zabbix_agentd.conf      # 在zabbix_agentd.conf配置文件中通过Include引用自定义Key文件目录
### Option: Include
# You may include individual files or all files in a directory in the configuration file.
# Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.
#
# Mandatory: no
# Default:
# Include=
# Include=/usr/local/etc/zabbix_agentd.userparams.conf
Include=/usr/local/zabbix_agent/etc/zabbix_agentd.conf.d/

2.2 在/usr/local/zabbix_agent/etc/zabbix_agentd.conf.d目录写编写自定义Key文件

# cat custom_parameters.conf
# Monitor CPU temperature
# cpu_core_0
UserParameter=Physical_cpu_0_temperature,sensors|grep "id 0"|awk '{print $4}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core0,sensors|grep -A 6 "id 0" | grep "Core 0" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core1,sensors|grep -A 6 "id 0" | grep "Core 1" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core2,sensors|grep -A 6 "id 0" | grep "Core 2" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core3,sensors|grep -A 6 "id 0" | grep "Core 3" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core4,sensors|grep -A 6 "id 0" | grep "Core 4" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_0_core5,sensors|grep -A 6 "id 0" | grep "Core 5" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}' # cpu_core_1
UserParameter=Physical_cpu_1_temperature,sensors|grep "id 1"|awk '{print $4}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core0,sensors|grep -A 6 "id 1" | grep "Core 0" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core1,sensors|grep -A 6 "id 1" | grep "Core 1" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core2,sensors|grep -A 6 "id 1" | grep "Core 2" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core3,sensors|grep -A 6 "id 1" | grep "Core 3" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core4,sensors|grep -A 6 "id 1" | grep "Core 4" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'
UserParameter=cpu_1_core5,sensors|grep -A 6 "id 1" | grep "Core 5" | awk '{print $3}'|awk -F "°" '{print $1}'|awk -F "+" '{print $2}'

这让定义就可以了,如果需要定义的Key较多的话,我们就可以通过这种方式来定义key了,这样做的好处大家也可以很清楚的看到了,配置清晰、明了,而且不和主配置文件在一起,避免修改key影响主配置文件哈。记得修改完配置文件,记得重启zabbix_agent服务啊。最好还要通过上面介绍的方法进行验证下啊。

Key定义好了,我们来看看,如何在zabbix web页面通过这些来创建监控项吧!

3、zabbix web页面,通过创建的自定义Key来建立监控项

这里我们以一个自定义key来介绍了,多个key的创建方法一样哦,小伙伴们自己动手试下吧。

这是通过自定义监控一颗物理CPU温度汇总的图形,大家可以看到,自定义Key是不是很好用啊。只要我们在服务器上可以获取的值,都可以通过自定义Key的方法来进行监控,也非常的灵活!下面在来设置上监控温度的触发器吧。

创建

到这里,自定义Key我们就介绍完了,可以在回顾下,我们都做了什么?

1、在zabbix_agent端配置文件增加自定义Key

2、重启zabbix_agentd服务

3、在zabbix_server端通过zabbix_get验证自定义key是否生效

4、在zabbix_web页面通过自定义key创建监控项

5、在zabbix_web页面给自定义key监控项创建图形

6、自定义Key监控项创建触发器

zabbix 自定义 key (转)的更多相关文章

  1. zabbix自定义key

    zabbix自定义key 1.修改客户端配置文件 #vi /opt/zabbix/etc/zabbix_agentd.conf Include=/opt/zabbix/etc/zabbix_agent ...

  2. Zabbix 自定义Key

    系统:Linux Centos 7.4 x64.Windos 2008 x64 服务:Zabbix 3.0.16 说明1:自定义Key 主要通过自定义 脚本 或者 命令 来实现自定义监控类型,需要在a ...

  3. zabbix 自定义Key (六)

    1.在zabbix_agent端zabbix_agentd.conf配置文件中增加自定义Key(/usr/local/zabbix_agent/etc/zabbix_agentd.conf) ### ...

  4. 菩提圣心诀---zabbix自定义key监控oracle连接状态(python脚本)

    目的:此次实验目的是为了zabbix服务端能够实时监控某服务器上oracle实例能否正常连接 环境:1.zabbix_server 2.zabbix_agent(含有oracle) 主要知识点: 1. ...

  5. zabbix 自定义key与参数Userparameters监控脚本输出

    1.修改agent配置文件: 通过yum安装的zabbix-agent配置文件路径为/etc/zabbix/zabbix_agentd.conf 里面定义我们自己配置文件路径:Include=/etc ...

  6. zabbix自定义key监控mysql主从同步超简单!

    原理:利用在slave上运行show slave status获取Slave_IO_Running和Slave_SQL_Running的值 1.在zabbix客户端配置文件中加入: 首先要对mysql ...

  7. zabbix自定义key监控memcache状态及其他服务进程

    一.在客户端 1.到/usr/loca/zabbix/conf/zabbix_agentd.conf里添加         UserParameter=memcached_stats[*],(echo ...

  8. zabbix自定义key监控redis

    一.启动redis-server cd /data/redis redis-server redis.conf (根据自己的环境启动redis) 测试脚本(写入1000个数据): seq |while ...

  9. zabbix自定义key监控nginx和fpm(网站并发数)

    一. nginx编译参数 监控nginx,主要讲解监控并发数 --prefix=/usr/local/nginx --with-http_stub_status_module zabbix编译参数的查 ...

随机推荐

  1. 2018.07.03 POJ 1279Art Gallery(半平面交)

    Art Gallery Time Limit: 1000MS Memory Limit: 10000K Description The art galleries of the new and ver ...

  2. 2018.09.18 atcoder Best Representation(kmp)

    传送门 思路简单不知为何调试了很久. 显然要么分成n个(所有字符相同),要么分成1个(原字符串无循环节),要么分成两个(有长度至少为2的循环节). 一开始以为可以直接hash搞定. 后来wa了几次之后 ...

  3. QGIS Server Quickstart

    http://live.osgeo.org/en/quickstart/qgis_mapserver_quickstart.html

  4. cxgrid动态显示行号

    uses cxLookAndFeelPainters; type TMyCxGrid = class(TObject)    class procedure DrawIndicatorCell(    ...

  5. vim 安装vim-javascript插件--Vundle管理

    最近看了一下node.js,但是写的时候,vim对js没有很好的提示.于是就安装插件来处理,准备安装vim-javascript.但是安装github上面的插件时,推荐用Vundle和pathogen ...

  6. 在TFS中使用Git Tags(标签或标记),实现代码的版本管理

    一.概述: 与TFVC中标记(Label)一样,Git的标签(Tag)也是TFS系统的代码管理中非常重要的一个版本管理工具.使用标签,我们可以每个时间点的代码注上一个通俗.并且容易记忆的名称(例如标签 ...

  7. python 实现敏感词屏蔽小程序

    有一个文件,里面有一些敏感词汇,如果输入这些词,就用**代替,然后输出.敏感词汇 dictionary.txt 文件内容: SB,傻B,傻逼,妈,日,shabi,操,sb,金三胖 代码实现主体: f ...

  8. SqlServer Session共享注意点

    公司下派任务,之前的网站是一台服务器,由于用户过多,负载过大,现在老大要求多加一台服务器.加就加贝,应该跟我这DEV没有 关系吧,应该不会碰到Source的吧.但是,之前网站有一些数据是放在Sessi ...

  9. EasyUi 合并单元格占列显示

    $("#TableContainer").datagrid({                url: '',                method: "get&q ...

  10. C#跨线程操作UI

    WPF启动调度器 : Dispatcher.Invoke(new Action(() => { //你的代码 }));