[转帖]jmeter_采样器sampler简介

jmeter,采样器,sampler,简介 · 浏览次数 : 0

小编点评

**Access Log Sampler** * **功能:**收集和分析真实用户操作的数据,可用于流量分析。 * **常见场景:**nginx访问日志。 **配置步骤:** 1. 创建一个名为 `access_log` 的新的取样器。 2. 配置协议、服务地址、端口和文件路径。 3. 设置日志格式。 **配置示例:** ``` access_log: /path/to/access.log format: JSON protocol: HTTP server_addr: 127.0.0.1 ``` **使用说明:** 1. 将 `access_log` 配置到需要监控的nginx日志文件中。 2. 启动 JMeter 服务器。 3. 启动测试用例,该用例将向服务器发送请求并记录响应数据。 **注意:** * 取样器只能在线程组中添加。 * 访问频率最niająca的 URL 和次数可使用 `awk` 命令进行筛选。 * 500 错误的访问次数可使用 `awk` 命令进行筛选。 * 502 错误最多的 URL 可使用 `awk` 命令进行筛选。

正文

1、取样器介绍

取样器是用来模拟用户操作的,向服务器发送请求以及接收服务器的响应数据。

取样器是在线程组内部的元件,也就是说取样器只能在线程组中添加。

取样器(Sampler)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元。(取样器通常要进行这三个工作)

2、jmeter自带取样器

  • HTTP Request:HTTP请求
  • Flow Control Action :测试活动
  • Debug Sampler :Debug取样器
  • JSR223 Sampler :JSR223取样器
  • AJP/1.3 Sampler :AJP/1.3取样器
  • Access Log Sampler:Access Log取样器
  • Bean Shell Sampler :Bean Shell取样器
  • FTP Request :FTP请求
  • JDBC Request :JDBC Request
  • JMS Publisher:JMS发布
  • JMS Point-to-Point :JMS点到点
  • JMS Subscriber :JMS订阅
  • JUnit Request :JUnit请求
  • Java Request :Java请求
  • LDAP Extended Request :LDAP扩展请求默认值
  • LDAP Request :LDAP请求
  • OS Process Sampler :OS进程取样器
  • SMTP Sampler :SMTP取样器
  • TCP Sampler :TCP取样器
  • Mail Reader Sampler:邮件阅读者取样器

3、AccessLog Sampler

Access Log Sampler 可以收集和分析真实用户操作的数据,并可用于流量分析,更适合get接口的压测。常见的就是我们的nginx的access.log 日志。

先新建个AccessLog sampler取样器,配置协议、服务地址、端口、文件路径就可以进行压测

access_log:⽤来指定⽇志⽂件的存放路径、格式

 

Nginx ⽇志参数如下:
$remote_addr 客户端地址 127.0.0.1
$remote_user 客户端⽤户名称
$time_local 访问时间和时区 18 /Dec/ 2019 : 17 : 00 : 01 + 0800
$request 请求的 URI HTTP 协议 "GET /index.html HTTP/1.1"
$http_host 请求地址,即浏览器中你输⼊的地址( IP 或域名) www.baidu.com
192.168 . 100.100
$status HTTP 请求状态 200
$upstream_status upstream 状态 200
$body_bytes_sent 发送给客户端⽂件内容⼤⼩ 1547
$http_referer url 跳转来源 https: //www.baidu.com/
$http_user_agent ⽤户终端浏览器等信息 "Mozilla/4.0 (compatible; MSIE 8.0; Windows
NT 5.1; Trident/4.0; SV1; GTB7.0; .NET4.0C;
$upstream_addr 后台 upstream 的地址,即真正提供服务的主机地址 10.10 . 10.100 : 8000
$request_time 整个请求的总时间 0.205
$upstream_response_time 请求过程中, upstream 响应时间 0.002

nginx场景log解析:awk

查找访问频率最⾼的 URL 和次数:
cat access.log | awk -F ‘^A’ ‘{ print $10}’ | sort | uniq -c
查找当前⽇志⽂件 500 错误的访问:
cat access.log | awk -F ‘^A’ ‘{ if( $5 == 500) print $0}’
查找当前⽇志⽂件 500 错误的数量:
cat access.log | awk -F ‘^A’ ‘{ if( $5 == 500) print $0}’ | wc -l
查找某⼀分钟内 500 错误访问的数量:
cat access.log | awk -F ‘^A’ ‘{ if( $5 == 500) print $0}’ | grep ’09:00’ | wc -l
查找耗时超过 1s 的慢请求:
tail -f access.log | awk -F ‘^A’ ‘{ if( $6>1) print $0}’
假如只想查看某些位:
tail -f access.log | awk -F ‘^A’ ‘{ if( $6>1) print $3″|” $4}’
查找 502 错误最多的 URL:
cat access.log | awk -F ‘^A’ ‘{ if($5== 502) print $11}’ | sort | uniq
</article>

与[转帖]jmeter_采样器sampler简介相似的内容:

[转帖]jmeter_采样器sampler简介

1、取样器介绍 取样器是用来模拟用户操作的,向服务器发送请求以及接收服务器的响应数据。 取样器是在线程组内部的元件,也就是说取样器只能在线程组中添加。 取样器(Sampler)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元。(取样器通常要进行这三个工作) 2、jmeter自带取样

[转帖]Jmeter跨线程组传参

https://www.cnblogs.com/a00ium/p/10462576.html 我们知道,同一线程组中可以通过“正则表达式提取器”获取其中一个取样器的响应结果中的参数,直接传给线程组中的其他取样器。但其他线程组中的取样器也想使用同样的参数时,无法直接获取。举个例子: 提取“登录”取样器

[转帖]jmeter正则表达式提取器获取数组数据-02篇

接上篇,当我们正则表达式匹配到多个值以后,入下图所示,匹配到21个结果,如果我们想一次拿到这一组数据怎么办呢 打开正则表达式提取器页面,匹配数字填入-1即可 通过调试取样器就可以看到匹配到已经匹配到多个结果了

[转帖]Jmeter学习笔记(十九)——后置处理器之正则表达式的使用

https://www.cnblogs.com/pachongshangdexuebi/p/11733005.html 一、正则表达式提取器的作用 允许用户从服务器的响应中通过使用perl的正则表达式提取值。作为一个后置处理器,该元素会作用在指定范围的取样器,应用正则表达式,提取所需要的值,生成模板

[转帖]Jmeter性能测试:高并发分布式性能测试

一、为什么要进行分布式性能测试 当进行高并发性能测试的时候,受限于Jmeter工具本身和电脑硬件的原因,无法满足我们对大并发性能测试的要求。基于这种场景下,我们就需要采用分布式的方式来实现我们高并发的性能测试要求。 二、分布式性能测试原理 要进行分布式性能测试,我们首先要先一台机器作为主控机(Con

[转帖]jmeter及serveragent的安装、常见报错及解决方法

一.说明: 1.jmeter必须在java环境下运行 2.jmeter抓包可以用自带服务器录制抓取,也可以手动网页抓取(含fiddler),也可以用badboy(更推荐手动抓取和badboy) 3.后面单独开一篇来说明各个功能的用处。 二.安装: 1.jmeter.properties配置:在jme

[转帖]JMETER性能监控之serverAgent

对linux服务器的服务进行压测时,服务器的运行情况可以通过添加插件serverAgent来观察,可以实时监控性能指标。 1 (一)环境准备 1、下载zip包ServerAgent-2.2.3.zip 2、在服务器中,创建一个文件夹serveragent,名字随便起 mkdir serveragen

[转帖]jmeter分布式执行原理

jmeter分布式执行原理https://www.jianshu.com/p/bcfc48054b1e Jmeter分布式执行原理: 1、Jmeter分布式测试时,选择其中一台作为控制机(Controller),其它机器做为代理机(Agent)。 2、执行时,Controller会把脚本发送到每台A

[转帖]JMeter分布式测试环境搭建(禁用SSL)

https://www.cnblogs.com/MasterMonkInTemple/p/11978058.html JMeter分布式环境,一台Master,一到多台Slave,Master和Slave可以是同一台机器。 前提条件: 所有机器,包括master和slave的机器: 1.运行相同版本

[转帖]jmeter压力测试

使用jmeter 进行并发压力测试。 首先需要安装好jmeter,下面以widows操作平台为例: 1、确保电脑安装并配置好java环境;具体怎么下载和配置请自行百度; 2、登录jmeter官网http://jmeter.apache.org/download_jmeter.cgi,点击如下图操作