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简介的更多相关文章

  1. 转帖: Serverless架构模式简介

    Serverless架构模式简介   原贴地址:https://blog.csdn.net/chdhust/article/details/71250099?utm_medium=referral&a ...

  2. [转帖]linux lsof 用法简介

    linux lsof 用法简介 https://www.cnblogs.com/saneri/p/5333333.html 1.简介: lsof(list open files)是一个列出当前系统打开 ...

  3. [转帖]8086 CPU 寄存器简介

    8086 CPU 寄存器简介 https://www.cnblogs.com/BoyXiao/archive/2010/11/20/1882716.html 哎 没看完 感觉好复杂. 引子 打算写几篇 ...

  4. [转帖]influxdb和boltDB简介——MVCC+B+树,Go写成,Bolt类似于LMDB,这个被认为是在现代kye/value存储中最好的,influxdb后端存储有LevelDB换成了BoltDB

    influxdb和boltDB简介——MVCC+B+树,Go写成,Bolt类似于LMDB,这个被认为是在现代kye/value存储中最好的,influxdb后端存储有LevelDB换成了BoltDB ...

  5. [转帖]kafka入门:简介、使用场景、设计原理、主要配置及集群搭建

    kafka入门:简介.使用场景.设计原理.主要配置及集群搭建 http://www.aboutyun.com/thread-9341-1-1.html 还没看完 感觉挺好的. 问题导读: 1.zook ...

  6. 性能测试-Jmeter

    缘由 很多情况下我们写程序过程中只会对固定模块采取并发限制,而且asp.net对于多线程也有他自己的处理机制,尤其对于注重业务,结果导向的团队可能更注重一定时间节点给出满意的产品,但是你的模块到底是否 ...

  7. Jmeter中Websocket协议支持包的使用

    Jmeter中Websocket协议支持包的使用(转) 参考的来源是国外一篇文章,已经整理成pdf格式(http://yunpan.cn/cFzwiyeQDKdh3 (提取码:9bcf)) 转自:ht ...

  8. jmeter 测试websocket接口(一)

    jmeter 测试websocket接口时,需要对jmeter添加测试websocket的jar包. 下载地址: https://download.csdn.net/download/qq_14913 ...

  9. Jmeter中Websocket协议支持包的使用(转)

    转自:http://blog.csdn.net/typing_yes_no/article/details/49512167 参考的来源是国外一篇文章,已经整理成pdf格式(http://yunpan ...

  10. Jmeter进行webSocket接口测试

    一.运行Jmeter (1) 去官方网站下载jmeter(版本为3.3)并解压.点击bin/jmeter.bat启动jmeter (2)  新建线程组. (3) 在线程组中新建WebSocket Sa ...

随机推荐

  1. 文心一言 VS 讯飞星火 VS chatgpt (32)-- 算法导论5.2 4题

    四.利用指示器随机变量来解如下的帽子核对问题(hat-heck problem):n位顾客,他们每个人给餐厅核对帽子的服务生一顶帽子.服务生以随机顺序将帽子归还给顾客.请问拿到自己帽子的客户的期望数是 ...

  2. 25、Flutter中基本路由

    Flutter 路由介绍 Flutter中的路由通俗的讲就是页面跳转.在Flutter中通过Navigator组件管理路由导航. 并提供了管理堆栈的方法.如:Navigator.push和Naviga ...

  3. Eclipse部署虚拟项目目录

    目录 1. 问题 2. 方案 3. 参考 1. 问题 对于一些附带了大量本地资源的项目(例如,用户上传的文件,地图切片或者三维模型等),在Eclipse中部署调试是我一直头痛的问题.因为Eclipse ...

  4. 云小课|MRS基础原理之CarbonData入门

    阅识风云是华为云信息大咖,擅长将复杂信息多元化呈现,其出品的一张图(云图说).深入浅出的博文(云小课)或短视频(云视厅)总有一款能让您快速上手华为云.更多精彩内容请单击此处. 摘要:CarbonDat ...

  5. 火山引擎VeDI助力零售品牌私域运营 实现与会员高效“沟通”

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 小程序正在成为零售品牌与会员高效沟通的第二阵地. 过去,零售品牌多依赖电商平台与会员保持互动联系.消费者通过关注[ ...

  6. 火山引擎 DataTester:如何做 A/B 实验的假设检验

    A/B 实验的核心统计学理论是(双样本)假设检验,是用来判断样本与样本.样本与总体的差异是由 抽样误差 引起还是 本质差别 造成的一种统计推断方法. 假设检验,顾名思义,是一种对自己做出的假设进行数据 ...

  7. Codeforces Round 908 (Div. 2)

    总结 T1 题目大意: A,B两人玩游戏,游戏规则如下: 整场游戏有多轮,每轮游戏先胜 \(X\) 局的人获胜,每场游戏先胜 \(Y\) 局的人获胜. 你在场边观看了比赛,但是你忘记了 \(x\) 和 ...

  8. 2024-01-17:lc的30. 串联所有单词的子串

    2024-01-17:用go语言,给定一个字符串 s 和一个字符串数组 words. words 中所有字符串 长度相同. s 中的 串联子串 是指一个包含 words 中所有字符串以任意顺序排列连接 ...

  9. L2-012 关于堆的判断 (25分) (字符串處理)

    将一系列给定数字顺序插入一个初始为空的小顶堆H[].随后判断一系列相关命题是否为真.命题分下列几种: x is the root:x是根结点: x and y are siblings:x和y是兄弟结 ...

  10. C++函数:std::tie 详解

    在补CF周赛时发现dalao用了一个 tie函数和tuple类型,表示没怎么接触,现在稍微学习记录一下. tuple 即元组,可以理解为pair的扩展,可以用来将不同类型的元素存放在一起,常用于函数的 ...