1zabbix自定义监控Windows服务器的原理

Zabbix为Windows服务器的监控提供了PerfCounter(性能计数器)这个功能。Zabbix客户端通过PerfCounter获取Windows服务器上的相关性能信息,然后发送给服务器端。

2、如何获取Windows服务器的PerfCounter表达式

方法一:

在Windows服务器的控制面板->管理工具->性能的系统监视器中,可以看到这些性能监控。

点击添加计数器后,在弹出的添加计数器对话框中,可以在性能对象下拉菜单中选择相应的监控项目,然后在下面的列表中选择需要使用的计数器,在右边的里表中选择范例。点击添加。

添加后的计数器在下面列表中可以看到

在添加的计数器上面右键选择属性,在弹出的窗口中的数据选项卡中可以看到具体的perfCounter表达式

方法二:

进 入开始->运行,输入CMD进入命令窗口。输入typeperf –qx| more 获取相关PerfCounter表达式。也可以配合管道输出给find,查找想要的相关表达式。以获取网卡PerfCounter为例,在命令行输 入:typeperf –qx |find “Network Interface”|find /V “LoopBack”

命令的意思是,查找和“Network Interface”相关的PerfCounter。/V是忽略和”LoopBack”回环接口的PerfCounter

3、在zabbix中使用PerfcounterWindows模板添加监控项

在zabbix中,使用PerfCounter的方法有两种:

方法一:

在模板添加监控项时使用perf_counter作为key表达式:

以添加CPU空闲时间监控为例:

系统配置->模板,选择Windows监控模板。进入监控项,点击右上角的Create Item,创建监控项,在key中添加PerfCounter相关的参数,然后在设置一下其他选项,保存即可。

方法二:

在客户端配置文件zabbix_agentd.conf文件中添加类似于Parameter自定义监控的PerfCounter参数。具体使用格式如下

PerfCounter=<监控项key表达式>,<性能计数器名称>

以添加网卡监控为例:

修改Windows服务器上的zabbix客户端配置文件zabbix_agentd.conf,添加通过typeperf-qx命令获取的和网卡相关信息

#Network

PerfCounter=NetAllInt0,"\Network Interface(Intel[R] PRO_1000 MT Network Connection)\Bytes Total/sec",30

PerfCounter=NetInInt0,"\Network Interface(Intel[R] PRO_1000 MT Network Connection)\Bytes Received/sec",30

PerfCounter=NetOutInt0,"\Network Interface(Intel[R] PRO_1000 MT Network Connection)\Bytes Sent/sec",30

PerfCounter=NetBandInt0,"\Network Interface(Intel[R] PRO_1000 MT Network Connection)\Current Bandwidth",30

4.15.2 Windows服务器网卡流量监控

方法一:

windows的key的关键字可以使用网卡的ip地址来替代。例如:net.if.out[192.168.101.1,bytes]

方法二:

如果更改了ip地址,上面的方法就不灵了。使用Macro能比较好的解决监控本地网卡的需求net.if.out[{IPADDRESS},bytes]

方法三:

Macro 中的{IPADDRESS}只是获取主机的外网IP地址,对于多网卡的主机来说内网网卡就监控不到了。在客户端配置文件中使用PerfCounter可以 解决这个问题。但每个机器的网卡型号不一定相同,因此typeperf的输出也不一样。我写了个perl脚本,来解决这个问题。

use strict;

use warnings;

#添加对网卡的监控

my @network=`typeperf -qx |find "Network Interface"|find /V "Loopback"|find "Bytes Total"`;

my $i=0;

foreach my $int (@network)

{

if($int=~ /^(\\Network Interface.*\\).*$/)

{

my $intname=($1);

open OUT_FILE, ">>c:\\zabbix\\zabbix_agentd.conf" or die("Could not write the file");

print OUT_FILE <<EOF;

#Network

PerfCounter=NetAllInt${i},"${intname}Bytes Total/sec",30

PerfCounter=NetInInt${i},"${intname}Bytes Received/sec",30

PerfCounter=NetOutInt${i},"${intname}Bytes Sent/sec",30

PerfCounter=NetBandInt${i},"${intname}Current Bandwidth",30

EOF

close(OUT_FILE);

$i++;

}

}

不同的windows服务器只要运行这个脚本,就可以根据服务器上网卡型号还有网卡数量,将监控写入到zabbix_agentd.conf配置文件中。

 

Zabbix在 windows下监控网卡的更多相关文章

  1. Linux下监控网卡流量的软件Nload

    Linux下监控网卡流量的软件Nload 安装nload: # wget http://www.roland-riegel.de/nload/nload-0.7.2.tar.gz # tar zxvf ...

  2. Zabbix添加windows主机监控

    zabbix监控windows主机 1.官网下载zabbix的windows-agent(选择相应版本): https://www.zabbix.com/cn/download_agents 2.将下 ...

  3. Linux下监控网卡流量的软件iftop

    官网上说使用iftop需要libpcap和libcurses这两个包. 用命令查找了一下 #  rpm -qa | grep libpcap libpcap-0.9.4-15.el5 只找到了这个,缺 ...

  4. windows 下双网卡在不同网络切换设置

           首先你的机器需要有两块网卡,分别接到两台交换机上, ine rnet地址:192.168.1.8,子网掩码:255.255.255.0,网关:192.168.1.1 内部网地址:172. ...

  5. windows下监控进程的脚本

    相信大家都有这样的需求,某程序(进程)在运行的时候可能挂掉,需要去监控该程序,并在它挂掉的时候重启之,确保该程序能一直运行.比如土net就经常挂,需要监控程序去监控.Linux下面似乎有守护进程的概念 ...

  6. Python监控Windows下的文件变化

    windows下监控文件系统的变化.用python非常方便.实例代码例如以下,非常easy.也不多说了. import os import win32file import win32con ACTI ...

  7. 分布式系统监视zabbix讲解十之监控tomcat--技术流ken

    前言 在Zabbix中,JMX监控数据的获取由专门的代理程序来实现,即Zabbix-Java-Gateway来负责数据的采集,Zabbix-Java-Gateway和JMX的Java程序之间通信获取数 ...

  8. 【zabbix】Windows服务器获取IIS站点以及程序池状态

    在使用zabbix做Windows服务器监控的时候遇到一个比较棘手的问题,检测IIS站点状态. 普通情况下,只要用浏览器访问iis站点测试一下返回码是不是200即可判断状态,但是我这次遇到的是iis使 ...

  9. 16 利用Zabbix完成windows监控

    点击返回:自学Zabbix之路 16 利用Zabbix完成windows监控 1.安装zabbix_agentd 1.1.下载zabbix_agentd监控客户端软件安装包(windows操作系统客户 ...

随机推荐

  1. Linux命令之nohup (转)

    nohup 详解   阅读目录 nohup 案例 nohup和&的区别 参考链接 正文 回到顶部 nohup nohup 命令运行由 Command参数和任何相关的 Arg参数指定的命令,忽略 ...

  2. [hdu-6395]Sequence 分块+矩阵快速幂

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6395 因为题目数据范围太大,又存在递推关系,用矩阵快速幂来加快递推. 每一项递推时  加的下取整的数随 ...

  3. Filebeat 7.1.1 安装及使用(连接ES)

    1. 下载 & 解压 # 下载 wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.1.1-linux- ...

  4. Redis持久化深入理解

    用过Redis的都知道,Redis有两种持久化方式:RDB和AOF,他们的区别大家应该都清楚,所以今天主要想分享一下这两种持久化方式的底层原理以及实现. 如果让你手写一个持久化(架构级)的功能,你没有 ...

  5. HTTP 学习笔记03

    通用信息头 Cache-Control : no-cache(不缓存当前请求) [*] Connection:close(返回当前请求后立即断开)[*] Date:...(HTTP消息产生的时间) P ...

  6. HDU 1533:Going Home(KM算法求二分图最小权匹配)

    http://acm.hdu.edu.cn/showproblem.php?pid=1533 Going Home Problem Description   On a grid map there ...

  7. 嵊州D4T1 翻车 rollover 真的翻车了

    翻车 [问题描述] 有一天,小武找到了翻车王,给了他n个整数a1,a2,a3,…an,翻车王需要选择其中的k个数,使得选出的k个数中任意两个的差都可以被m整除. 选出的数可以重复,但不可以超过这n个数 ...

  8. 剑指offer第二版-3.数组中重复的数

    面试题3:数组中重复的数 题目要求: 在一个长度为n的数组中,所有数字的取值范围都在[0,n-1],但不知道有几个数字重复或重复几次,找出其中任意一个重复的数字. 解法比较: /** * Copyri ...

  9. 【06】Jenkins:Gitlab 自动触发构建以及钉钉通知

    写在前面的话 在某些时候,我们希望能够实现这样一个功能,当用户提交东西到 gitlab 上的时候,希望它能够自动触发构建,发布到我们需要的环境. 目前我们内部有做类似的需求:产品提交原型到 gitla ...

  10. 【动态规划例题-数塔问题】-C++

    描述 观察下面的数字金字塔.写一个程序查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以 从当前点走到左下方的点也可以到达右下方的点. 在上面的样例中,从13到8到26到15到24 ...