zl程序教程

您现在的位置是:首页 >  云平台

当前栏目

性能测试:工具篇:Jmeter实时可视化平台搭建

实时测试性能工具平台 搭建 可视化 JMeter
2023-09-11 14:14:24 时间

Jmeter实时可视化平台搭建

部署 influxDB

首先,pull influxBD镜像(拉取是1.8的版本,虽有2.0+的版本,但我还是喜欢站在巨人的肩头前行…):

debugfeng@debugfeng:~$ sudo docker pull influxdb:1.8
1.8: Pulling from library/influxdb
1671565cc8df: Pull complete 
3e94d13e55e7: Pull complete 
fa9c7528c685: Pull complete 
52a25ba52346: Pull complete 
aa26e2239d02: Pull complete 
0ab001de8b69: Pull complete 
610b13a73459: Pull complete 
4de10ef52d67: Pull complete 
Digest: sha256:4e3d30d9d00798581a820d19ff762ce000a217498e2e00b361ca334595f1f515
Status: Downloaded newer image for influxdb:1.8
docker.io/library/influxdb:1.8

其次,docker run …,启动容器并运行:

debugfeng@debugfeng:~$ sudo docker run -itd -p 8083:8083 -p 8086:8086 --name my-influxdb influxdb:1.8
caf829d4fb272c2f9cf856022fe534e8ad5f0d507be9d150e6f590692fe5a59b
debugfeng@debugfeng:~$ sudo docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                                                                                  NAMES
caf829d4fb27   influxdb:1.8   "/entrypoint.sh infl…"   5 seconds ago   Up 4 seconds   0.0.0.0:8083->8083/tcp, :::8083->8083/tcp, 0.0.0.0:8086->8086/tcp, :::8086->8086/tcp   my-influxdb

最后,docker exec -it … /bin/bash,进入指定容器,启动并创建数据库:

debugfeng@debugfeng:~$ sudo docker exec -it caf829d4fb27 /bin/bash
root@caf829d4fb27:/# ls
bin  boot  dev  entrypoint.sh  etc  home  init-influxdb.sh  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@caf829d4fb27:/# cd usr/
root@caf829d4fb27:/usr# ls
bin  games  include  lib  libexec  local  sbin  share  src
root@caf829d4fb27:/usr# cd bin/
root@caf829d4fb27:/usr/bin# ./influx
Connected to http://localhost:8086 version 1.8.10
InfluxDB shell version: 1.8.10
> show databases;
name: databases
name
----
_internal
> create database jmeter;
> show databases;
name: databases
name
----
_internal
jmeter
> 

注意点,设置influxDB时区(因为默认时区和北京相差8h,所以要同步下时区,不然后面查询不到数据)

如果你服务器时间是正常的,可直接复制服务器时间到容器内:

debugfeng@debugfeng:~$ timedatectl set-timezone "Asia/Shanghai"
debugfeng@debugfeng:/usr/share$ sudo docker cp zoneinfo 722a729efd74:/usr/share
debugfeng@debugfeng:/usr/share$ sudo docker exec -it 722a729efd74 /bin/bash
root@722a729efd74:/# date
Thu Sep  1 00:28:03 UTC 2022
root@722a729efd74:/# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
root@722a729efd74:/# echo "Asia/Shanghai" > /etc/timezone
root@722a729efd74:/# date
Thu Sep  1 08:28:40 CST 2022
root@722a729efd74:/# exit

如果你服务器时间也不正常,需执行如下命令(ubuntu系统),先同步下时间:

debugfeng@debugfeng:~$ date
Wed 31 Aug 2022 11:00:15 AM UTC
debugfeng@debugfeng:~$ timedatectl status
               Local time: Wed 2022-08-31 11:02:18 UTC
           Universal time: Wed 2022-08-31 11:02:18 UTC
                 RTC time: Wed 2022-08-31 11:02:18    
                Time zone: Etc/UTC (UTC, +0000)       
System clock synchronized: yes                        
              NTP service: active                     
          RTC in local TZ: no                         
debugfeng@debugfeng:~$ timedatectl set-timezone "Asia/Shanghai"
debugfeng@debugfeng:~$ timedatectl status
               Local time: Wed 2022-08-31 19:02:50 CST
           Universal time: Wed 2022-08-31 11:02:50 UTC
                 RTC time: Wed 2022-08-31 11:02:50    
                Time zone: Asia/Shanghai (CST, +0800) 
System clock synchronized: yes                        
              NTP service: active                     
          RTC in local TZ: no  

部署 Grafana

首先,pull grafana/grafana镜像:

debugfeng@debugfeng:~$ sudo docker pull grafana/grafana
latest: Pulling from grafana/grafana
9621f1afde84: Pull complete 
37c977d2b27c: Pull complete 
c808de7a697e: Pull complete 
86659f76fb09: Pull complete 
747aee88ceca: Pull complete 
99d875e11915: Pull complete 
3fb2327ae1ed: Pull complete 
ac9523800f50: Pull complete 
e15e29cdce8f: Pull complete 
Digest: sha256:980ff2697655a0aa5718e40bbda6ac52299d2f3b1584d0081152e2d0a4742078

其次,docker run …,启动容器并运行:

debugfeng@debugfeng:~$ sudo docker run -d -p 3000:3000 --name=my-grafana grafana/grafana
3fee0e5e988dc658db10ef3c6a9cd52db0b2c972b2567500d2661364a20ea9c9

最后,直接 http://ip_address:3000到浏览器访问即可。默认账号为:admin;默认密码为:admin

图片

图片

图片

图片

图片

图片

图片

引用可视化数据模板

https://grafana.com/grafana/dashboards/5496-apache-jmeter-dashboard-by-ubikloadpack/
图片

图片

图片

图片

部署jmeter

图片

influxdbUrl固定写法:http://ip_address:8086/write?db=jmeter
measurement:为创建的influxdb数据库名称

图片

今天先聊到这里吧,以上总结或许能帮助到你

现在我邀请你进入我们的软件测试学习交流群:746506216】,备注“入群”, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!

在这里插入图片描述

在这里插入图片描述