zoukankan      html  css  js  c++  java
  • jmeter脚本运行结果实时监控

    一、背景

    我们很多时候在使用JMeter做性能测试,我们很难及时察看压测过程中应用的性能状况,总是需要等到测试完成后去看Report

    二、解决方案

    JMeter引入Backend Listener,用于在压测过程中实时发送统计指标数据给时序数据库Influxdb,通过配置Grafana(开源的WEB可视化看板)数据源连接到Influxdb,我们就可以实时获取到测试指标数据。

    三、工具安装部署

    influxdb

    1. 下载与安装 

      #184机器是ubuntu系统所以采用的是deb的包安装方式
      #wget https://dl.influxdata.com/influxdb/releases/influxdb_1.6.2_amd64.deb
      #sudo dpkg -i influxdb_1.6.2_amd64.deb
    2. 修改配置 

       1 #Jmeter使用graphite协议去写入数据到InfluxDB,因此,需要在InfluxDB配置文件启用它,如下
       2 vi /etc/influxdb/influxdb.conf
       3  
       4 #修改以下配置
       5 [[graphite]]
       6  enabled = true
       7  bind-address = ":2003"
       8  database = "jmeter"
       9  retention-policy = ""
      10  protocol = "tcp"
      11  batch-size = 5000
      12  batch-pending = 10
      13  batch-timeout = "1s"
      14  consistency-level = "one"
      15  separator = "."
      16  udp-read-buffer = 0
    3. 设置环境变量

      1 vi ~/.bashrc
      2  
      3 #增加环境变量配置
      4 export INFLUXDB_CONFIG_PATH="/etc/influxdb/influxdb.conf"
    4. 启动influxdb服务

      1 #以服务模式启动 | 这种方式启动还不行,得需要再看下
      2 service influxdb start
      3  
      4  
      5 #以非服务模式启动
      6 influxd -config /etc/influxdb/influxdb.conf
    5. 初始化db数据

       1 root@qa_debug_srv01:~# influx  #登录数据库
       2 Connected to http://localhost:8086 version 1.6.2
       3 InfluxDB shell version: 1.6.2
       4 > show databases  #查看所有数据库
       5 name: databases
       6 name
       7 ----
       8 _internal
       9 > CREATE DATABASE "jmeter" #创建数据库
      10 > use jmeter               #切换数据库
      11 Using database jmeter
      12 > CREATE USER "admin" WITH PASSWORD 'admin' WITH ALL PRIVILEGES # 创建管理员权限的用户
    6. 端口说明

      • 8086端口,Grafana用来从数据库取数据的端口
      • 2003端口,JMeter往数据库发数据的端口
    7. 其他说明

      因influxdb1.2版本以后均没有了web界面,web界面操作频率很低,故没有再去找web界面解决方法

    graphna

    1. 安装与启动

      wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana_4.5.2_amd64.deb
      sudo dpkg -i grafana_4.5.2_amd64.deb
       
       
      #启动
      sudo service grafana-server start
      

        

    四、访问地址

    http://10.1.9.184:3001/login用户名:admin
    密码:ganlezheyibei

    五、jmeter配置

    线程中添加一个监听器 Backend Listener

    parameter配置

    influxdbMetricsSender org.apache.jmeter.visualizers.backend.influxdb.HttpMetricsSender
    influxdbUrl http://10.1.9.184:8086/write?db=jmeter
    application mtl_orderGivenShow
    measurement jmeter
    summaryOnly false
    samplersRegex ^[^#_].*
    percentiles 50;90;95;99
    testTitle mtl_orderGivenShow

    application和testTitle可以自己命名,针对于在grafna上找到对应的名称查看结果

    六、操作方法

      1. jmeter  Backend Listener 的 parameter 配置中,配置好自己的application名称,运行压测
      2. 登录graphna进入默认的dashboard

      3. 选择你设置的application名称则就可以看到实时的jmeter运行结果

      4. 结果示例:

  • 相关阅读:
    【性能诊断】十一、性能问题综合分析(案例2,windbg、wireshark)
    SQL Server常用的性能诊断语句
    Oracle常用的性能诊断语句
    【性能诊断】五、并发场景的性能分析(windbg简介及dump抓取)
    数据库管理与开发工具推荐---DBeaver
    DM达梦数据库---执行计划查看
    DM达梦数据库索引失效的处理---强制更新统计信息
    jProfiler、jMAT等工具注意设置启动的Xmx参数
    JVM启动参数建议
    Linux环境jcmd抓取进程信息及内存dump
  • 原文地址:https://www.cnblogs.com/qianjinyan/p/12067257.html
Copyright © 2011-2022 走看看