记录日志系统的安装-部署-配置-使用文档(5)
ELK-ALERTING - 告警功能前提:使用告警功能必须配置 SSL,配置安全性可以站内搜索 [记录日志系统的安装-部署-配置-使用文档(4)] Kibana 本身提供了告警功能,左菜单位位置(7.14.0),但是免费支持的告警操作只有写入索引和写入 Kibana 日志,其他功能需要收费(19 美元一个月)。网上提到一个方案 sentinl,但是似乎截止到 2021-08-20 仅支持到 Kibana 7.6.1 的版本。 创建连接器(以邮件和 webhook 举例)邮件 企业微信邮箱发送方主机: IP:smtp.exmail.qq.com Port:465 QQ 邮箱发送方主机: IP:smtp.qq.com Port:465 / 587 记得在账户那里开启 SMTP,然后密码是授权码 测试,可以有多个接收方 Webhook 飞书 webhook 企业微信群机器人 发个测试 123456789{ "msg_type": "text", "content&qu...
Beanshell 用法
JMeter 里面有几个用到 Beanshell 的地方,这里作统一介绍。 Beanshell Sampler – 一个独立的 Beanshell 请求 Beanshell PreProcessor – sample 的一个预处理装置,在 sample 之前执行,可用来作为执行的先决条件(例如产生某些输入) Beanshell PostProcessor – 在 sample 之后再执行的一个提交处理器,可用来恢复数据或清除数据 Beanshell Assertion – 一个访问 JMeter API 的后期断言装置,Java 的逻辑可以被用来设置这个断言的结果 __Beanshell Function – 允许在 sample 执行期间,客户自定义 Beanshell 代码的 JMeter 函数 下面说明会经常使用的 Beanshell 语法: 假设你有个自定义的变量 id,想给这变量重新赋值,那么你可以使用 vars 操作相关变量获取变量:vars.get("id"); 给变量赋值:vars.put("id","J_12...
JMeter 使用逻辑控制器
JMeter 包含了如下多种控制器 使用方式将请求包含在控制器内部。 样例当选中红框时,可以使用 Groovy 执行 Beanshell 脚本。 Groovy(官方建议使用方式) JavaScript 脚本方式(不勾选红框)
JMeter 响应断言
JMeter 中有个元件叫做断言(Assertion),它的作用和 LoadRunner 中的检查点类似。用于检查测试中得到的响应数据是否符合预期,用以保证性能测试过程中的数据交互与预期一致。 JMeter 常用几种断言 Response Assertion(响应断言) Size Assertion(数据包字节大小断言) Duration Assertion(持续时间断言) Beanshell 断言(自由断言) JSON 断言 Response Assertion(响应断言)添加响应断言对 Web 请求的响应结果进行验证。 输入需要匹配的字符串此处对于访问 Baidu 首页,需要设置匹配的字符串为"百度一下,你就知道",表示返回的文本内容若包含有"百度一下,你就知道",则就算 Pass。 Response Assertion 配置参数 模块类型 选项名称 配置说明 Name Response Assertion 名称 Comments 注释 Apply to 断言应用的范围 Main sample...
QPS, PV, UV, RT 之间的关系
QPS(每秒查询率)每秒查询率(Query Per Second),每秒的响应请求数,也即是最大吞吐能力。 QPS = req/sec = 请求数 / 秒 QPS 统计方式【一般使用 http_load 进行统计】 QPS = 总请求数 / (进程总数 × 请求时间) QPS:单个进程每秒请求服务器的成功次数 峰值 QPS 每天 80% 的访问集中在 20% 的时间里,这 20% 的时间叫做峰值时间 公式:(总 PV 数 × 80%)/ (每天秒数 × 20%) = 峰值时间每秒请求数据(QPS) PV(页面浏览量)访问量即 Page View,即页面浏览量或点击量,用户每次刷新即被计算一次。 单台服务器每天 PV 计算 公式 1(峰值): 每天总 PV = QPS × 3600 × 6 公式 2(normal): 每天总 PV = QPS × 3600 × 8 UV(独立访客)独立访客即 Unique Visitor,访问您网站的电脑客户端为一个访客,00:00-24:00 内相同的客户...
AB 压测工具使用指南
Apache Benchmark(简称 ab)是 Apache 安装包中自带的压力测试工具,简单易用。 安装(CentOS)123yum -y install httpd-tools# 或apt -y install apache2-utils AB 参数说明1234567891011121314151617181920212223242526272829303132333435363738394041424344454647-n:一个要执行的次数。默认为 1。【-n 和 -c 一般成对出现。eg [-c 10 -n 1000]:同时处理 10 个请求,每组运行 (1000/10) 次,必须满足 n 能整除 c】-c:单次发出的并发请求数。默认为 1。【-n 和 -c 一般成对出现。eg [-c 10 -n 1000]:同时处理 10 个请求,每组运行 (1000/10) 次,必须满足 n 能整除 c】-t:测试所进行的最大秒数。用于测试的最大秒数是 50000【等价于 -n 50000】,它可以使对服务器的测试限制在一个固定的总时间以内。-p postfile:File co...
JMeter 动态参数
使用 CSV 作为动态参数的输入添加->配置元件->CSV Data Set Config 添加动态参数。如下: CSV 文件的内容如下:这里随意写了几个。变量名列表。对应参数文件每列的变量名,类似 Excel 文件的文件头,起到标示作用,同时也是后续引用的标识符,建议采用有意义的英文标示。例如:loginToken 可以被用变量名来引用:${loginToken}。多个变量名之间必须用分隔符分隔。如果该项为空,则文件首行会被读取并解析为列名。 12345loginToken111222233334444 JMeter 中配置如下: 参数解释 名称(Name):脚本中显示的该元件的描述性名称,必须填写。 注释(Comments):对该元件的说明信息。(非必填写) 文件名(Filename):待读取文件的名称。可以写入绝对路径,也可以写入相对路径(相对于 bin 目录或者脚本文件所在目录),如果直接写文件名,则该文件一定要放在 bin 目录中。对于分布式测试,主机和远程机中相应目录下应该有相同的 CSV 文件,必须填写。(建议填写相对路径,...
JMeter 模拟浏览器行为发送请求(Web 页面端压力测试)
背景在做性能测试的时候,有时候我们希望测试用户访问一个 Web 页面的加载时间,使用 JMeter 压测的话,需模拟浏览器的行为,加载整个页面的内容,包含一些 JS、CSS、PNG 图片资源等文件的加载。 参考 https://blog.csdn.net/meitingbee/article/details/53924469 https://blog.csdn.net/qq_27371025/article/details/117945423 https://www.jianshu.com/p/c5370860b142
JMeter 线程组执行顺序设置
背景当前请求需要上一个请求响应的数据做参数的值传入到当前请求里,这种情况必须保证上一个请求先执行,才能保证当前请求可以得到参数的值。 操作此示例为将登录之后获取的 cookie 放置到全局变量中,供后续线程组使用。按此配置后,执行顺序会从上到下依次执行。 注:如果使用了不同的线程组可能会遇到非预期执行顺序的现象除了主线程组,还有两种特殊的线程组:setUp 线程组和 tearDown 线程组。它们与主线程组区别在于,setUp 线程在主线程执行前自动触发执行;而 tearDown 线程组在主线程结束后执行。 setUp 线程组可以用于测试准备,比如用它来创建测试用户等。 Teardown 线程组可以用于测试清理工作,比如删除测试用户等。
JMeter 连接 JDBC
数据库驱动包下载与安装示例:连接 MySQL 下载 Connectorhttps://dev.mysql.com/downloads/connector/j/ 安装下载完成后解压放到 JMeter 的 lib/ext 下 重启 JMeter JDBC 的连接配置添加配置元件 - JDBC Connection Configuration 参数详解 Variable Name for created pool:自己定义连接数据库的名称,需要记住,这里会在后续使用 JDBC Request 中用到 Database URL:数据库 URL,jdbc:mysql://主机 IP 或者机器名称:MySQL 监听的端口号/数据库名称,如:jdbc:mysql://localhost:3306/kyj。URL 后面的参数(可以不写)characterEncoding=utf8&useSSL=true&serverTimezone=UTC,设置时区和编码格式 JDBC Driver class:MySQL 新版使用 com.mysql.cj.jdbc.Drive...
