jmeter之监控平台:grafana+influxdb+telegraf

一、配置influxdb

拉取镜像并运行容器

docker run -d  -p2003 -p 8086:8086 -p 8083:8083 -p 3000:3000 registry.cn-hangzhou.aliyuncs.com/zhufc/influx_grafana:v5

首先配置influx数据库

vim /etc/influxdb/influxdb.conf

image-20210505222933414

由于这个命令是权限校验,需要先关闭它才能创建用户,所以现在我们先注释它。

注释后,启动influxd服务、进入influx数据库创建用户

influxd &
influx
CREATE USER root WITH PASSWORD '000000' WITH ALL PRIVILEGES

查看刚才创建的用户

show users

image-20210505223804521

我们再次进入influxdb.conf开启权限校验,取消注释。

image-20210505224015123

我们现在打开服务地址,端口后就是我们使用docker启动时设置的端口

image-20210505224645590

配置数据库监听端口,用户是root,密码是刚刚我们配置的000000

image-20210505224841771

二、配置grafana

在容器中启动grafana

service grafana-server restart

打开grafana链接:http://ip:3000,并输入密码和账户,都是admin

image-20210506211227190

配置数据库

image-20210506211957099

image-20210506212132904

输入数据库名称、数据库类型、url地址,这个就是本机服务器对外的ip地址,如果云服务器就是公网的ip

image-20210506213805226

密码就是之前创建的数据库的用户root密码:000000

image-20210506212442052

点击save & test,证明已经添加成功。

image-20210506212522589

创建第二个配置

image-20210506212648757

image-20210506214001737

和之前配置的密码一样

image-20210506212929072

保存即可

现在导入模板

image-20210506211504905

输入jmeter 模板 id:4026

image-20210506211729310

我这里已经导入,所以就不用导入,没有提示话就可以导入

image-20210506214104847

这是之前已经配置过的

image-20210506214246146

一般使用这个

image-20210506214438694

配置活动线程

image-20210506220456593

image-20210506220522100

image-20210506220538978

image-20210506220604379

修改下面的SQL语句为:

SELECT mean("meanActiveThreads") FROM "virtualUsers" WHERE $timeFilter GROUP BY time(1s)

image-20210506220619485

image-20210506220711383

然后同样的修改吞吐量SQL为:

SELECT count("responseTime") FROM "requestsRaw" WHERE $timeFilter GROUP BY time(1s)

修改响应时间的SQL为:

SELECT mean("responseTime") FROM "requestsRaw" WHERE $timeFilter GROUP BY time($__interval)

修改聚合报告SQL为:

SELECT count(responseTime) as Count, mean(responseTime) as Avg, min(responseTime) as Min, median(responseTime) as Median, percentile(responseTime, 90) as "90%",percentile(responseTime, 95) as "95%",percentile(responseTime, 99) as "99%", max(responseTime) as Max, (sum(errorCount)/count(responseTime)) as "Error Rate" FROM "requestsRaw" WHERE $timeFilter GROUP BY time(1m)
三、配置jmeter后置监听器

首先下载InfluxDB插件,到这里下载

然后放入ext目录中

image-20210506222814069

image-20210506222927194

image-20210506223850539

然后启动jmeter,grafana已经监听到数据

image-20210506224116692

修改请求数

image-20210506231221046

调整后的样式

image-20210506231904616

image-20210506231932570

四、telegraf 服务器监控配置

修改配置文件

vim /etc/telegraf/telegraf.conf

修改ip为服务器ip

image-20210506232316267

重启服务

/etc/init.d/telegraf restart

导入telegraf 模板 id:3967

image-20210506214201351

我这边之前已经导入过了,就不导入了

然后选择system

image-20210506232836117

选择容器id,这个就是容器的id

image-20210506232917303

和上面是一致的。

image-20210506233044127

一共分成了5个部分

image-20210506233304212

image-20210506235235373

转载自:https://testerhome.com/topics/21113

posted @ 2021-06-28 22:02  Walker~  阅读(208)  评论(0)    收藏  举报