51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 24716|回复: 38
打印 上一主题 下一主题

Jmeter Linux资源监控器

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-8-1 20:56:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
by jack

最近完成了jmeter linux资源监控器的开发,方法并不怎么高明,但相信可以帮助很多用jmeter来做性能测试的同仁解决jmeter缺少linux资源监控的问题
附件中是编译好的包以及linux上所用的脚本。基本的原理是利用shell脚本生成资源xml,让jmeter利用http请求获取该xml,解析展现数据。
欢迎各位同仁测试使用,有问题也可以与我交流。

监控器实现的是linux系统上的资源监控,要求:服务器上至少有一个web server(因需要通过http请求获取资源xml),用于生成服务器资源xml的脚本中使用了sysstat包中的指令,所以需要安装sysstat包。
使用方法:
下载:
先解开压缩包,取出status脚本,登录到被监控的服务器上,status脚本放上去。该脚本执行时会在所在路径生成status.xml文件,可以直接将status脚本放在web server的目录下,也可以用软链接来链到status.xml文件。下面介绍在基于apacheweb server上的配置方法:
apache的配置文件httpd.conf中找到DocumentRoot,一般默认是apache目录下的htdocs,将status脚本放到该目录下;
更改执行权限:
chmod 744 status
启动该脚本:
./status start
启动起来之后就会在当前目录下产生status.xml文件
不需要监控时,停止该脚本:
./status stop




然后到运行jmeter的机器上,解开压缩包里的ext.rar包,将解压得到的两个jar包:ApacheJMeter_core.jarApacheJMeter_monitors.jar,复制到jmeterlib/ext目录下,覆盖原来的jar包。
之后就可以到jmeter上来监控了:打开jmeter,建立一个线程组,添加一个http请求,ip就是要监控的服务器地址,端口号就是apache侦听的http端口,协议是“http”,路径是“/status.xml”,勾选“用作监视器”;



再为该http请求添加一个“固定定时器”组件和一个“监视器结果”组件,“固定定时器”的延时要设置为大于1秒的时间,即数据的采样时间。



在线程组中循环次数设置勾选“永远”;



Run一下,就可以在监视器结果上看到刚刚添加的监控服务器了,目前已经监控了6个参数:cpu%user,cpu%iowait,load,mem%(used/total),swap in,swap out。



如果被监控的linux上没有安装sysstat包,是无法正常生成监控数据的,这里附上sysstat包的安装方法:
首先到 http://perso.wanadoo.fr/sebastien.godard/ 下载最新的版本,最好是源码包,比如sysstat-5.1.1.tar.gz

1.
解包:


tar zxvf sysstat-5.1.1.tar.gz



2.
安装:


cd sysstat-5.1.1


make config
这步可以省略,有些发行版中会出错;如果不用这个命令,可以直接安装到其默认的/usr/local/lib目录中


make
编译


make install
安装


这样就安装好了。


[ 本帖最后由 qaarchitech 于 2008-8-1 20:58 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2008-8-7 19:17:32 | 只看该作者
不知道下载的同仁们用了感觉如何,如果有不足,也请提出来我好改进
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-8-29 17:25:02 | 只看该作者
下载了,支持下
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-9-5 14:12:32 | 只看该作者
如果服务器上没有配www服务器呢?
LZ准备如何获取你想要的这些参数?
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2008-9-8 19:55:32 | 只看该作者
我最近在做的一个工具应该能解决lz的应用问题
在写一个linux c的http工具,用于服务器数据收集和展示的
很轻量,可以考虑做成插件化
这样可以比lz所用的shell效率高一些
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-9-9 11:12:47 | 只看该作者

怎么没数据

我按照你说的步骤设置了。但是没有监控数据,我的远程LINUX 都可以运行sysstat的命令,而且也查到status有在运行。
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2008-9-10 11:15:10 | 只看该作者

回复 6# 的帖子

直接在浏览器里输入http请求能看到xml吗?
比如主贴实例中的就是http://10.0.4.144/status.xml
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-10-31 17:12:43 | 只看该作者

回复 1# 的帖子

为什么要付费
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2008-12-17 15:12:08 | 只看该作者
楼主,你好!!!
你的提出的两种方法我都进行了尝试,可是监控服务器的显示依然是dead,到底为什么啊?
我的jmeter是2.3.2,linux是red hat,apache 2.2.11,完全是按照你的步骤进行的,可是却总是一个结果,快愁死我了!!!
帮帮忙啊!!!272241822
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2009-1-13 23:14:08 | 只看该作者
不错免责备呢
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2009-2-20 17:06:04 | 只看该作者
终于找到了该东西!~~先谢谢了!~
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2009-8-19 10:36:42 | 只看该作者
  试试看
回复 支持 反对

使用道具 举报

该用户从未签到

13#
发表于 2009-8-19 10:55:59 | 只看该作者
xml是生成了,但是有个错误。
(standard_in) 1: parse error

我的qq是:497171722
回复 支持 反对

使用道具 举报

该用户从未签到

14#
发表于 2009-8-22 14:57:45 | 只看该作者
很好,学习。。。
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2009-9-23 11:26:52 | 只看该作者
赞一个 啊
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2009-11-26 17:12:36 | 只看该作者
够贵的,先下来看看
回复 支持 反对

使用道具 举报

该用户从未签到

17#
发表于 2009-11-26 19:41:59 | 只看该作者
LZ您好,有个问题想请教您,我看您在设置的status文件时,在apache的应用里是把它配置到apach的web server上里面了,那在Linux下的jboss服务器里该怎么设置呢?
回复 支持 反对

使用道具 举报

该用户从未签到

18#
发表于 2010-1-24 09:06:20 | 只看该作者

不错,挺高明。

不错,挺高明。
回复 支持 反对

使用道具 举报

该用户从未签到

19#
发表于 2010-2-24 17:51:46 | 只看该作者
覆盖两个jar文件以后,不能添加http请求了,如果不覆盖是可以添加的,望楼主帮我解决,谢谢!
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2014-12-26 13:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    20#
    发表于 2010-3-25 21:51:00 | 只看该作者

    付费,鄙视!

    Jmeter本来都开源免费。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-27 08:39 , Processed in 0.089039 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表