51Testing软件测试论坛

标题: LoadRunner监控tomcat [打印本页]

作者: beauty330804    时间: 2011-6-9 16:56
标题: LoadRunner监控tomcat
本帖最后由 beauty330804 于 2011-6-9 16:59 编辑

通过这几天上网查找资料,反复试验,今天终于把LoadRunner监控tomcat整通了,开心\(^o^)/~~~~~
具体的lr脚本如下,与大家分享一下!

double atof (const char * string);
Action()
{  
  // 保存JVM内存数值
   web_reg_save_param("JVM_FreeMemory",
                       "LB=Free memory: ",
                       "RB= MB",
                       "Ord=1",
                       LAST);
    web_reg_save_param("JVM_TotalMemory",
                       "LB=Total memory: ",
                       "RB= MB",
                       "Ord=1",
                       LAST);
    web_reg_save_param("JVM_MaxMemory",
                       "LB=Max memory: ",
                       "RB= MB",
                       "Ord=1",
                       LAST);

    //保存http-8989连接数值
    web_reg_save_param("http_MaxThreads",
                       "LB=Max threads: ",
                       "RB= ",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_CurrentThreadCount",
                       "LB=Current thread count: ",
                       "RB= ",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_CurrentThreadBusy",
                       "LB=Current thread busy: ",
                       "RB= ",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_MaxProcessingTime",
                       "LB=Max processing time: ",
                       "RB= ms",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_ProcessingTime",
                       "LB=Processing time: ",
                       "RB= s",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_RequestCount",
                       "LB=Request count: ",
                       "RB= ",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_ErrorCount",
                       "LB=Error count: ",
                       "RB= ",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_BytesReceived",
                       "LB=Bytes received: ",
                       "RB= MB",
                       "Ord=1",
                       LAST);
    web_reg_save_param("http_BytesSent",
                       "LB=Bytes sent: ",
                       "RB= MB",
                       "Ord=1",
                       LAST);
  //定义tomcat内存使用情况的监视器事务;
lr_start_transaction("status");
web_set_user("admin", "pass","localhost:8989");

web_url("status",
  "URL=http://localhost:8989/manager/status",
  "Resource=0",
  "RecContentType=text/html",
  "Referer=",
  "Snapshot=t1.inf",
  "Mode=HTML",
  LAST);
lr_end_transaction("status", LR_AUTO);
//使用lr_user_data_point()添加数据到图表中去
    lr_user_data_point("Tomcat JVM FreeMemory", atof(lr_eval_string("{JVM_FreeMemory}")));
    lr_user_data_point("Tomcat JVM TotalMemory", atof(lr_eval_string("{JVM_TotalMemory}")));
    lr_user_data_point("Tomcat JVM MaxMemory", atof(lr_eval_string("{JVM_MaxMemory}")));
    lr_user_data_point("Tomcat http MaxThreads", atof(lr_eval_string("{http_MaxThreads}")));
    lr_user_data_point("Tomcat http CurrentThreadCount", atof(lr_eval_string("{http_CurrentThreadCount}")));
    lr_user_data_point("Tomcat http CurrentThreadBusy", atof(lr_eval_string("{http_CurrentThreadBusy}")));
    lr_user_data_point("Tomcat http MaxProcessingTime", atof(lr_eval_string("{http_MaxProcessingTime}")));
    lr_user_data_point("Tomcat http ProcessingTime", atof(lr_eval_string("{http_ProcessingTime}")));
    lr_user_data_point("Tomcat http RequestCount", atof(lr_eval_string("{http_RequestCount}")));
    lr_user_data_point("Tomcat http ErrorCount", atof(lr_eval_string("{http_ErrorCount}")));
    lr_user_data_point("Tomcat http BytesReceived", atof(lr_eval_string("{http_BytesReceived}")));
    lr_user_data_point("Tomcat http BytesSent", atof(lr_eval_string("{http_BytesSent}")));

return 0;
}
作者: bluejay    时间: 2011-6-9 17:00
谢谢分享,我留个言以备以后要用。
作者: superliming    时间: 2011-6-10 09:37
已经研究过,呵呵  恭喜下
作者: beauty330804    时间: 2011-6-10 09:49
回复 4# superliming
谢谢~~~你知道LoadRunner监测mysql,要监测哪些性能指标吗?我用的是sitescope
作者: mvvztt    时间: 2011-6-10 11:13
我也留个言,备用
作者: jlz1984    时间: 2011-6-10 11:43
谢谢分享
作者: andyfly_001    时间: 2011-6-11 00:59
不错,之前我都是用专门的监控工具来监控jvm线程,堆/栈内存大小.
作者: gcylqq    时间: 2011-6-11 12:55
好厉害~~~我都不知道用loadrunner还能直接监控tomcat~~~请问同时需要在tomcat上做些什么前期配置工作吗?
作者: 高保真    时间: 2011-6-11 13:06
正在实践研究中
作者: yxd2006    时间: 2011-6-11 20:09
先收藏了,谢谢
作者: beauty330804    时间: 2011-6-13 09:56
回复 9# gcylqq
用的,需要在tomcat的conf目录下tomcat-users.xml文件中,配置管理员角色
<tomcat-users>
  <role rolename="manager"/>
  <user username="admin" password="pass" roles="manager"/>
</tomcat-users>
其他的我就没有配置啦!
作者: 51mobile    时间: 2011-6-13 21:47
谢谢收藏了
作者: beauty330804    时间: 2011-6-14 11:52
回复 14# yy199771
个人观点:在做性能测试,想监控tomcat的一些指标时会用到!
作者: 御风弄影    时间: 2011-6-14 16:41
收藏了,谢谢楼主分享
作者: papeandpopo    时间: 2011-6-14 17:22
mark,learn
作者: xiaogang606    时间: 2011-6-14 17:28
飘过,留着备用。建议楼上多加点注释,这样的话,我们这些菜鸟更容易看懂·
作者: mvvztt    时间: 2011-6-15 09:36
呃,这段代码放在哪里好呢?
作者: mvvztt    时间: 2011-6-15 09:41
呃,这段代码放在哪里好呢?
作者: liuliu022004    时间: 2011-6-16 13:20
虽然不会用,但是留着备用。谢谢分享。
作者: kenouter    时间: 2011-6-17 11:13
不错的脚本,谢谢分享
作者: ljj149850508    时间: 2011-6-17 13:56
留个脚印  以后备查,THANKS
作者: pipishi    时间: 2011-6-17 14:32
找不到收藏功能在哪儿?
作者: ljj149850508    时间: 2011-6-17 14:37
已经收藏,谢谢
作者: niuniu0206    时间: 2011-6-17 15:15
藏了,备用
作者: fanbin19861008    时间: 2011-6-20 16:32
不错,学习了!
作者: wangyueyong1    时间: 2011-6-21 11:17
占位
作者: jrong    时间: 2011-6-21 14:06

作者: msangel    时间: 2011-6-21 14:17
打个tag  以后留着用~~~哈哈谢谢楼主
作者: zhouxiaowen    时间: 2011-6-21 15:01
回复 20# mvvztt


    放到action里面。
作者: mvvztt    时间: 2011-6-21 17:11
回复  mvvztt


    放到action里面。
zhouxiaowen 发表于 2011-6-21 15:01



    是要放在单独的一个Action里面么?
作者: zhouxiaowen    时间: 2011-6-21 18:22
回复 32# mvvztt


    恩,是的。
作者: 517632732    时间: 2011-6-22 11:25
请求楼主赐教LOADRUNNER,因为我是新手啥都不会,方便的话请留个联系QQ吧
作者: 竹疏    时间: 2011-6-22 16:51
很好,收藏了
作者: lymmxz    时间: 2011-6-23 07:23
不错的资料啊
作者: talerance    时间: 2011-6-23 09:24
留言,备份,谢谢
作者: ttkk    时间: 2011-6-23 15:39
学习了
作者: 刘顺    时间: 2011-6-23 15:51

作者: gjh2022    时间: 2011-6-23 16:20

作者: 芳芳郁金香1218    时间: 2011-6-23 17:04
thanks for ur share~~
作者: hnkfzhaomeng    时间: 2011-6-23 17:50
多谢,收藏!
作者: 让我上    时间: 2011-6-24 15:15
不错
作者: jimoderen    时间: 2011-6-25 23:11
回复 1# beauty330804


   高人
作者: gjh2022    时间: 2011-7-1 14:29
up
作者: iamsoddy    时间: 2011-7-1 16:58
正好在学,感谢LZ分享
作者: shuihen86    时间: 2011-7-4 17:38
呵呵  谢谢分享 正好在用
作者: 470454788    时间: 2011-7-4 17:53
备用
作者: beauty330804    时间: 2011-7-5 21:33
回复 44# jimoderen
不敢当,只是项目需要监控tomcat和内存,被逼出来的!呵呵,不过,还好,折腾了几天,终于整明白啦!
作者: 御风弄影    时间: 2011-7-8 17:09
弱弱的问一句,结果在哪里看啊?
作者: zhouxiaowen    时间: 2011-7-12 14:39
回复 20# mvvztt


    放到action里。
作者: lycan_322    时间: 2011-11-16 15:43
单独放在一个action里,场景 怎么设置啊
作者: xiaoyaoac    时间: 2012-1-18 17:37
谢谢啊,以后可能用得着
作者: victory_xing    时间: 2012-6-1 13:01
支持原创,顶一下
作者: dhl0613    时间: 2012-6-4 17:53
LZ好厉害!我只知道可以用LR监控服务器资源,不知道可以监控Tomcat和数据库呢。谢谢分享!
作者: Donly    时间: 2012-6-5 13:57
放在单独的一个action里面的话,那是要每执行一次整个action才会执行一次参数统计,会不会存在实时性问题呢?还是说是单独启动一个场景,使用一个用户不停的重复执行呢?具体操作还是不太明白……
作者: xxllff2000    时间: 2012-6-6 09:37
回复 56# xzf2001

我用jdk自带的Jconsole看的,这两不是一个东西吧
作者: amo666    时间: 2012-6-8 21:39
回复 57# xxllff2000


    是啊,为什么不直接用JConsole监控呢?与楼主的脚本监控有什么区别呢?
作者: dhl0613    时间: 2012-8-6 14:19
回复 1# beauty330804

web_set_user("admin", "pass","localhost:8989");
请问这里最后一个参数是什么意思啊?是Tomcat的端口号吗?
作者: moonlight1125    时间: 2012-8-7 11:10
谢谢收藏了
作者: lengyao    时间: 2012-8-7 16:12
非常感谢
作者: cross1900    时间: 2012-12-11 13:15
学习了。谢谢LZ
作者: wjytesting    时间: 2012-12-25 14:55
谢谢
作者: thjk2009testing    时间: 2012-12-25 17:14
mark
作者: 芒子梦    时间: 2012-12-26 14:49
看看




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2