Zabbix用户参数配置

用户参数介绍:

有时候当我们运行的监控项目在zabbix预定义的key中没有定义时,就需要我们手动编写zabbix用户参数的方法来监控我们要定义的项目。需要在zabbix agent端把相关获取参数的命令写入到配置文件中的UserParameter中,然后zabbix Server读取配置文件中的返回值通过处理前端的方式返回给用户。

定义方法如下:

在被监控端/etc/zabbix/zabbix_agentd.d/目录下,创建*.conf结尾的文件,在文件内写入获取命令即可。

定义的语法如下:

UserParameter=key[*],command

参数描述:

Key:唯一. [*]表示里面可以传递多个参数

Command:需要执行的脚本,key的[]里面的参数一一对应$1到$9,一共9个参数。$0表示脚本命令。

注意事项:

如果需要使用命令行里面出现$2这种变量,那么你要使用两个$$2,例如awk ‘{print $$2}‘,否则会获取不到数据。

监控内存参数

示例:在被监控服务器node2的/etc/zabbix/zabbix_agentd.d/目录下,创建一个os.conf文件,定义获取内存的值

[[email protected] ~]# vim /etc/zabbix/zabbix_agentd.d/os.conf
UserParameter=os.memory.used,free -m | awk ‘/^mem/ {print $3}‘
[[email protected] ~]# service zabbix-agent restart

Zabbix服务器应用新定义的用户参数,这里使用刚刚定义的建值

定义一个图形:

可以从图形看到收集的相关数据了

客户端还可以监控其他参数,如获取第二段就是总空间,获取第四段就是剩余空间

[[email protected] ~]# vim /etc/zabbix/zabbix_agentd.d/os.conf
UserParameter=os.memory.used, free -m | awk ‘/^Mem/{print $3}‘            #内存已用空间
UserParameter=os.memory.free, free -m | awk ‘/^Mem/{print $4}‘            #内存剩余空间
UserParameter=os.memory.total, free -m | awk ‘/^Mem/{print $2}‘           #内存总空间
[[email protected] ~]# service zabbix-agent restart

在定义一个监控项监控内存剩余空间

定义饼状图一起显示内存已用空间和剩余空间

图形预览如下所示:

监控nginx状态参数

安装nginx

[[email protected] ~]# yum -y install nginx

配置nginx

[[email protected] ~]# vim /etc/nginx/conf.d/default.conf
  location /status {
      stub_status on;
      allow 172.16.0.0/16;
      deny all;
  }

设置完成访问验证:

显示说明:

Active connections: 2   # 当前所有处于打开状态的连接数;

server accepts handled requests

9 9 33

(1) 已经接受过的连接数

(2) 已经处理过的连接数

(3) 已经处理过的请求数;在"保持连接"模式下,请求数量可能会多于连接数量;

Reading: 1 Writing: 1 Waiting: 0

Reading:正处于接收请求状态的连接数;

Writing: 请求已经接收完成,正处于处理请求或发送响应的过程中的连接数;

Waiting:保持连接模式,且处于活动状态的连接数;

定义UserParameter用来获取指定参数的值:

[[email protected] ~]# vim /etc/zabbix/zabbix_agentd.d/nginx.conf
UserParameter=Nginx.active[*], /usr/bin/curl -s "http://$1:$2/status" | awk ‘/^Active/ {print $NF}‘         #监控active
UserParameter=Nginx.reading[*], /usr/bin/curl -s "http://$1:$2/status" | grep ‘Reading‘ | cut -d" " -f2    #监控reading
UserParameter=Nginx.writing[*], /usr/bin/curl -s "http://$1:$2/status" | grep ‘Writing‘ | cut -d" " -f4    #监控writing
UserParameter=Nginx.waiting[*], /usr/bin/curl -s "http://$1:$2/status" | grep ‘Waiting‘ | cut -d" " -f6    #监控waiting
UserParameter=Nginx.accepted[*], /usr/bin/curl -s "http://$1:$2/status" | awk ‘/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$1}‘  #监控已接受连接
UserParameter=Nginx.handled[*], /usr/bin/curl -s "http://$1:$2/status" | awk ‘/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$2}‘   #监控处理过的连接
UserParameter=Nginx.requests[*], /usr/bin/curl -s "http://$1:$2/status" | awk ‘/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$3}‘  #监控已经处理过的请求数
[[email protected] ~]# service zabbix-agent restart

定义一个监控项,监控已经处理过的请求数

定义图形

这个时候就可以看到监控的参数了

如果需要获取其他的参数,只需要在创建项目时设置相对应的key和对应的值即可。

时间: 2024-10-31 07:07:18

Zabbix用户参数配置的相关文章

5.Zabbix用户参数配置

一.用户参数介绍 有时候当我们运行的监控项目在zabbix预定义的key中没有定义时,就需要我们手动编写zabbix用户参数的方法来监控我们要定义的项目.需要在zabbix agent端把相关获取参数的命令写入到配置文件中的UserParameter中,然后zabbix Server读取配置文件中的返回值通过处理前端的方式返回给用户. 定义方法如下: 在被监控端/etc/zabbix/zabbix_agentd.d/目录下,创建*.conf结尾的文件,在文件内写入获取命令即可. 定义的语法如下:

解决Zabbix自定义用户参数无法获取到数据的问题

今天在一台被监控的主机上写了一个用户参数(UserParameter),用于监控这台主机上的一个pid,还有一些别的用户参数,其他的用户参数都正确获得了,唯独这个后加的pid始终没有获得到数据,服务和日志都重启查看了,没有任何报错,也试过将pid的这个值设置成text和number,但都始终无法获取到这个pid的数据.我也是着了急,就请教了一下资深的Zabbix专家邓工(他的博客地址是:http://dl528888.blog.51cto.com/). 我详细的提供了如下相关信息: 自定义的参数

Zabbix监控——Zabbix自定义用户参数制作监控项

很多情况下,我们使用zabbix内建的监控项不足以监控企业的具体业务,这时就需要使用zabbix提供的自定义参数扩展接口,自己根据业务监控需求,开发相应的脚本作为数据获取途径,自定义参数又存在两种方式,一种是直接把脚本内容写在自定义参数配置文件里面,另一种是写成独立的脚本文件,自定义参数配置文件里面直接调用脚本. 接下来给大家展示一下使用自定义脚本方式(脚本内容直接写在配置文件里面)添加监控项第一步:确认zabbix_agent开启了扩展参数配置(客户端的操作)vim /etc/zabbix/z

zabbix 客户端安装配置

  1.下载zabbix wget http://netix.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.7/zabbix-2.4.7.tar.gz   2.编译安装zabbix 当前路径 pwd /usr/local/src 解压 tar -zxvf zabbix-2.4.7.tar.gz 进入zabbix目录,安装 cd zabbix-2.4.7/ ./configure --prefix=/usr/local

zabbix 飞信集成配置

1.环境说明: (Gentoo Linux环境) # uname -a Linux Crob 2.6.34-gentoo #1 SMP Mon May 31 15:45:25 CST 2010 x86_64 Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz GenuineIntel GNU/Linux # emerge -pv zabbix These are the packages that would be merged, in order: Calcu

Percona Monitoring Plugins for Zabbix 安装和配置

配置环境: centos 6.6 zabbix server and agent:2.4.7 Percona Monitoring Plugins for Zabbix:1.1 前置条件 :zabbix agent已经安装 :   若用源码安装 请使用如下参数编译 configure --prefix=/ --enable-agent 1 安装依赖包php php-mysql yum install -y php php-mysql 2 安装插件 wget https://www.percona

zabbix的简单配置

zabbix是一个基于web界面来监视各种网络参数,保证服务器系统的安全运营的开源软件;他还可以提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题.下面我们来对它进行一些简单的配置 主机环境:rhel6.5 selinux and iptables disabled 参考文档:www.zabbix.com 实验主机: 192.168.122.182 server2.example.com(服务端) 192.168.122.74 server3.example.com(客户端) zabb

Zabbix邮件报警配置

一.安装sendmail或者postfix(安装一种即可) yum install sendmail                #安装 service sendmail start              #启动 chkconfig sendmail on                #设置开机启动 或者 yum install postfix service postfix start chkconfig postfix on 二.安装邮件发送工具mailx yum install m

Zabbix之action配置

Zabbix的action有三个配置项Action Conditions Operations,动作类型有两种.一发送消息,二执行远程命令 Action的配置 最主要的就是配置内容.定义宏 参数 描述 Name 唯一的action名称 Default subject 默认的消息主题,可以包含宏{TRIGGER.STATUS} Default message 默认的消息内容可以包含宏(macros) Recovery message 事件恢复的消息,即事件从problem到ok状态,仅会发送一次消