(mac)性能监控平台搭建JMeter+Grafana+Influxdb

【实现原理】

通过influxdb数据库存储jmeter的结果,再通过grafana采集influxdb数据库数据,完成监控平台展示

一、时间序列数据InfluxDB

1.InfluxDB下载安装

官网下载

https://portal.influxdata.com/downloads/

官网最新版:

(1) 安装influxDB

influxDX官方文档

OS X 10.8或者更高版本的用户,用 brew直接安装

复制代码
brew install influxdb
复制代码
//启动influxdb服务:
brew services start influxdb
//停止influxdb服务:
brew services stop influxdb
//查看是否启动成功:
ps -ef | grep influxd

//删除influxdb:
brew uninstall influxdb

//如果使用brew 不能彻底删除,请删除文件:
rm -rf ~/.influxdbv2

(2)启动 influxdb服务

查看是否启动成功

(3) 创建初始账号(端口默认 8086)

服务启动完之后,默认端口号是8086,浏览器打开localhost:8086来访问控制台。

打开控制台,会先创建一个用户

organization:InfluxDB组织是一组用户的工作区。所有仪表板、任务、存储桶和用户都属于一个组织。

bucket:所有 InfluxDB 数据都存储在一个存储桶中。一个桶结合了数据库的概念和存储周期(时间每个数据点仍然存在持续时间)。一个桶属于一个组织

bucket schema:具有明确的schema-type的存储桶需要为每个度量指定显式架构。测量包含标签、字段和时间戳。显式模式限制了可以写入该度量的数据的形状。

然后点击"continue"

token一定要保存下来,因为默认没办法查。

复制代码
ulCoG6Xb_8FZtZ5TFDzC3gLn6r62N6aB5r4KqJZAm6KUvKyILfufMbijx9L6bmmlhS5BpbtK8stFbuyHsncT1Q==

按步骤操作完成后就完成初始化了。

点击"QUICK START"

2. influxdb 交互工具

  • influxDB用户界面(UI) :上面localhost:8086打开的界面
  • influx命令行界面
  • influxDB HTTP API

3. 命令行influxdb-cli

influxdb-cli 官方文档

influxdb-cli各命令官方文档

(1)influxdb-cli安装

安装命令行:brew install influxdb-cli

(2)配置 Influx CLS

复制代码
influx config create --config-name may2024\
  --host-url http://localhost:8086 \
  --org "mayInfluxDB" \
  --token "ulCoG6Xb_8FZtZ5TFDzC3gLn6r62N6aB5r4KqJZAm6KUvKyILfufMbijx9L6bmmlhS5BpbtK8stFbuyHsncT1Q==" \
  --active

(3)创建 bucket : jmeter

复制代码
influx bucket create --name jmeter -c may2024

查看所有的bucket

复制代码
influx bucket list

influx bucket list 用法官方文档

List all buckets

List a bucket by name

List a bucket by ID

(4) 写数据和查询数据

influx write官方文档

influx query官方文档

复制代码
写入数据:influx write --bucket bucket_test1 --url https://influx-testdata.s3.amazonaws.com/air-sensor-data-annotated.csv
查询数据:influx query 'from(bucket:"bucket_test1") |> range(start:-30m)'

influx query \
  --profilers operator,query \
  'from(bucket:"jmeter") |> range(start:-1m)'

4. InfluxDB HTTP API

安装python依赖:pip3 install influxdb-client

二、grafana安装

官网:

https://grafana.com/grafana/download

用brew安装grafana,启动grafana

复制代码
brew install grafana

brew services start grafana

1. 安装 grafana

2. 启动 grafana

3. 进入grafana

启动完成后打开浏览器输入http://localhost:3000进入grafana登录页面

(默认用户名和密码都为admin,进入后可以更新密码,也可以跳过)

4. 添加数据源(含IP)

选择influxDB数据源

填写以下信息即可

注意:url中的端口要和 influx的一致

图中URL是 influxDB数据库访问的地址

Query language选择【influxQL】或【Flux】的设置有区别

4.1【influxQL】

Query language选择 influxQL

Header:

复制代码
Authorization

Value:

复制代码
Token ulCoG6Xb_8FZtZ5TFDzC3gLn6r62N6aB5r4KqJZAm6KUvKyILfufMbijx9L6bmmlhS5BpbtK8stFbuyHsncT1Q==

4.2 【Flux】

  • Query language选择 Flux

保存测试后,出现以下提示,说明数据源连接成功

保存测试查看数据源是否连接成功:

查看已连接的数据源

5. 导入grafana展示模板

(1)获取模板ID

官方模板

搜索 jmeter(模板可以根据自己喜好选择)

(2)导入模板

效果如下:

注意:数据源中连接设置中:

  • Query language选择 influxQL时,仪表盘正常

有黄色感叹号的,可能是模板版本的匹配问题,可以更换其他版本

  • Query language选择 Flux时,仪表板各模块左上角有红色感叹号❗️(还没有找到原因)

三、jmeter配置

1.jmeter中,添加"监听器 -> 后端监听器"

四、 无界面压测

进入 jmx脚本文件目录下,执行以下命令:

复制代码
jmeter -n -t jmeter2024.jmx -l result001.jtl -e -o reports 

grafana实时监控页面

数据说明:

CPU(%):

  • idle: 剩余CPU数
  • User:用户空间
  • System:系统内核
  • Steal: 虚拟机所占用的百分比
  • Softirq: 应用程序所占用百分比

其他平台:windows/linux/docker

windows/linux/docker容器下 jmeter+influxdb+grafana搭建

windows增加部分:

influxdb.conf文件的修改

修改 3 个部分

相关推荐
文人sec2 天前
性能测试-jmeter9-逻辑控制器、定时器压力并发
测试工具·jmeter·性能优化·模块测试
Insist7533 天前
prometheus安装部署与alertmanager邮箱告警
linux·运维·grafana·prometheus
爱敲代码的TOM3 天前
Grafana+Loki+Alloy构建企业级日志平台
grafana
CesareCheung4 天前
JMeter分布式压力测试
分布式·jmeter·压力测试
测试界清流4 天前
jmeter使用技巧
jmeter
春时似衿里4 天前
jmeter配置数据库连接步骤
数据库·jmeter
新知图书4 天前
JMeter的安装部署
jmeter
程序员杰哥4 天前
什么是Jmeter? Jmeter工作原理是什么?
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·测试用例
linux修理工4 天前
n1 ARMbian部署Grafana
arm开发·架构·grafana
乐神嘎嘎嘎4 天前
Jmeter测试
jmeter