解析JMeter的JTL文件

2013年01月30日 ⁄ 综合 ⁄ 共 1452字 ⁄ 字号    ⁄ 评论关闭
 

http://code.google.com/p/xtoolkit/wiki/JTLParser

Introduction

当把JMeter使用命令行运行后,JMeter会把结果保存到一个指定文件中(使用 -l 参数指定)。这个文件记录了每条Query的响应时间、状态等,如:

<?xml version="1.0" encoding="UTF-8"?>
<testResultsversion="1.2">
<httpSamplet="232"lt="232"ts="1305880045755"s="true"lb="HTTP Request"rc="200"rm="OK"tn="CardEye 1-1"dt="text"by="2508"/>
</testResults>

这其中:

  • t 是该Query的响应时间
  • ts 是该Query的发送时间,以毫秒为单位
  • rc 是返回码

我这个JTLParser就是来解析这个文件,然后返回一些常用的性能结果指标,返回的性能指标有:

  • QPS:平均一秒内处理的Query数
  • Latency: 平均响应时间
  • 最大响应时间
  • Query Success Number:返回码是200的Query数
  • Query Failed Number:返回码不是200的Query数

下载地址

svn checkout http://xtoolkit.googlecode.com/svn/tags/JTLParser-0.1 JTLParser

Usage

java -jar JTLParser.jar 
 --jtlFile JTLFile                      :需要解析的JTL文件
 --percentFields PercentFields          :需要展示的不同百分比下的Query响应时间,使用逗号分割
 --responseTimeFields ResponseTimeField:需要展示的不同响应时间段的Query数,使用逗号分割

默认使用

默认只要使用\-\-jtlFile接一个JTL文件就可以,可以得到类似如下的结果:

FROM:                   05/20/1104:27:25
END:                    05/20/1104:37:25
SendedQueryNumber:    11721
TotalSpendedTime(s):  599.72
QPS:                    19.54
Latency(ms):            43
MaxResponseTime(ms):  403
QuerySuccessNumber:   11721
QueryFailedNumber:    0

展示不同百分比下的Query平均响应时间

运行类似:java -jar JTLParser.jar --jtlFile YourJTLFile --percentFields 40,70,80,90就可以得到如下结果:

40Percentile(ms):      17
70Percentile(ms):      30
80Percentile(ms):      35
90Percentile(ms):      39

展示的不同响应时间段的Query数

运行类似:java -jar JTLParser.jar --jtlFile YourJTLFile --responseTimeFields 30,40,50就可以得到类似如下结果:

Latency>=30(ms):      7665    65.40%
Latency>=40(ms):      6288    53.65%
Latency>=50(ms):      4951    42.24%

JTLParser-linux上jmeter的jtl文件二次分析的更多相关文章

  1. jmeter之jtl文件解析

    我们知道命令行的方式执行完成jmeter后,会生成jtl文件,里面打开后就是一行行的测试结果, <httpSample t="1" lt="1" ts=& ...

  2. jmeter之jtl文件解析(生成测试报告)

    我们知道命令行的方式执行完成jmeter后,会生成jtl文件,里面打开后就是一行行的测试结果, <httpSample t="1" lt="1" ts=& ...

  3. 非GUI运行Jmeter,jtl文件没有响应数据的解决办法

    一.问题 Jmeter官方一直强调要在非GUI模式下运行Jmeter:Run your JMeter test in command-line non-GUI mode. 但在非GUI模式下运行生成的 ...

  4. 如何在SecureCRT中给linux上传和下载文件 安装redis

    首先建立文件 /download sz和rz命令无法用.则用以下1.和2.3步骤   需要上传或者下载,需要使用rz和sz命令.如果linux上没有这两个命令工具,则需要先安装.可以使用yum安装.运 ...

  5. 在Linux上使用PGP签名验证文件完整性

    文件在下载及存储过程中可能由于传输错误.硬件故障.文件系统错误等网络.硬件和软件方面的原因导致文件损坏,也可能在传输过程中受到攻击(如"中间人攻击")导致下载的文件被篡改或者下载到 ...

  6. 在SecureCRT中给linux上传和下载文件

    下载:sz中的s意为send(发送),告诉客户端,我(服务器)要发送文件 send to cilent,就等同于客户端在下载. 上传:rz中的r意为received(接收),告诉客户端,我(服务器)要 ...

  7. 使用apache-fileupload处理文件上传与上传多个文件 二(60)

    一 使用apache-fileupload处理文件上传 框架:是指将用户经常处理的业务进行一个代码封装.让用户可以方便的调用. 目前文件上传的(框架)组件: Apache----fileupload ...

  8. 如何在SecureCRT中给linux上传和下载文件

    方法/步骤     需要上传或者下载,需要使用rz和sz命令.如果linux上没有这两个命令工具,则需要先安装.可以使用yum安装.运行命令yum install lrzsz.   安装完成后就可以使 ...

  9. node.js的iconv模块----在linux上读取windows编码文件

    有时候我们在windows上会保存一些中文文字信息文件,然而由于编码集的差异,这文件在linux上显示为乱码,其中一种解决方法是node.js的iconv模块 var fs = require('fs ...

随机推荐

  1. vSphere Client 更改 ESX/ESXi 主机的端口

    https://blog.csdn.net/hanzheng260561728/article/details/51283808?locationNum=8&fps=1

  2. redis 延迟消息

    1.查询下redis 是否打开了键空间通知功能 发现打开了,如果没有打开可以在执行下 我们可以看到参数设置 2.订阅下键空间或者事件通知 订阅键空间:subscribe __keyspace@0__: ...

  3. 简约至上.md

    中秋花了一天多时间阅读了简约至上这本书,书中内容不多,主要是向我们传达了产品设计的4个要素,给了产品经理设计产品时的一些要义指导; 一产品定位 在进行产品设计之前,首页需要对这款产品的商业定位需要有个 ...

  4. 【spring data jpa】使用spring data jpa 的删除操作,需要加注解@Modifying @Transactional 否则报错如下: No EntityManager with actual transaction available for current thread - cannot reliably process 'remove' call

    使用spring data jpa 的删除操作,需要加注解@Modifying     @Transactional 否则报错如下: No EntityManager with actual tran ...

  5. jquery的ajax的success和fail用法

    $.ajax({ type:"POST", url: url, contentType: 'application/json;charset=utf-8', data: JSON. ...

  6. JavaScript中的Math方法演示

    <html> <head> <script type="text/javascript"> var num = 12.4; alert(Math ...

  7. 第六讲_图像分割Image Segmentation

    第六讲_图像分割Image Segmentation 语义分割(semantic segmentation) 常用神经网络介绍对比-FCN SegNet U-net DeconvNet 目录 +三大数 ...

  8. quick-cocos2d-x教程12:实现文本和password输入界面

    用户输入账号和password输入是常见工能,如今用editbox来实现username和password输入.可是这个商业项目上常见功能,网上却没有找到教程.我就一步一步的实现.代码例如以下: fu ...

  9. 可空类型Nullable

    Nullable类型: 值类型变量默认为0,不可空,为了使它可空,出现了Nullable类型,类型前面加?  变为引用类型 值类型是没有null值的,比如int,DateTime,它们都有默认值.举个 ...

  10. Android_动态权限管理的解决方式

    本博文为子墨原创.转载请注明出处! http://blog.csdn.net/zimo2013/article/details/50478201 1.前言 (1).因为MIUI等部分国产定制系统也有权 ...