Linux系统下生成TPS,ResponseTime曲线图

Linux系统下生成TPS,ResponseTime曲线图

1.背景

经常在Linux服务器执行压测,结束之后,将压测数据文件导出到Windows的jmeter桌面版本进行处理,有时传输文件较慢。因此有了在Linux系统下处理数据生成png图片的形式,到时统一导出png结果图片。

2.搭建环境

安装如图插件(图示为:在Linux桌面版/macOS中操作)

(注意如果是在Windows操作,复制Windows的文件过去是不行的,还需要自行赋予诸多文件的可执行权限)

3.示例

如图,现处理u600.jtl文件,使之生成TPS表现曲线图(tps.png)和响应时间表现曲线图(rt.png)两张图

命令:

JMeterPluginsCMD.sh --generate-png test.png --input-jtl results.jtl --plugin-type ResponseTimesOverTime --width 800 --height 600

命令解析:

--generate-png 后面接要生成的图片名称

--input-jtl 后面接要处理的jtl文件

--plugin-type 后面接要生成哪种指标类型的

类型有多种,以下列出主要的

TPS:TransactionsPerSecond

响应时间:ResponseTimesOverTime

响应码:ResponseCodesPerSecond

--width 800 --height 600:生成图片的宽高

 

例1:生成TPS表现曲线图:

JMeterPluginsCMD.sh --generate-png tps.png --input-jtl u600.jtl --plugin-type TransactionsPerSecond  --width 800 --height 600

例2:生成响应时间表现曲线图:

JMeterPluginsCMD.sh --generate-png rt.png --input-jtl u600.jtl --plugin-type ResponseTimesOverTime --width 800 --height 600

 

执行完例1和例2之后,生成图片,然后导出Windows查看

4.优缺点分析

优点:便捷快速,节省网络传输文件的时间和空间开销

缺点:如果多个文件位于多台Linux服务器,由于是生成图片,结果无法汇总叠加

针对缺点的改进方案:(使结果文件唯一)

a.可采取分布式压测方法

b.压测结果文件全部汇总到某一台压测机器上,所有文件的结果拼接成一个文件(此处有网络传输,但这是同一内网之间的传输,相比从云服务器传回本地Windows效率要高)

合并文件用到的命令:

sed -i ‘1d’ *.jtl(删除所有jtl文件首行解释性文字,不然拼接之后解析会报错)

cat *.jtl > final.jtl(将当前目录下所有jtl文件拼接到final.jtl)

然后命令里仅处理 final.jtl即可

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值