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. Boost Your Strategy With The Content Marketing Tools

    Boost Your Strategy With The Content Marketing Tools In today's digital landscape, content marketing ...

  2. 问鼎CodeXGLUE榜单,华为云UniXcoder-VESO-v1算法取得突破

    摘要:华为云PaaS技术创新团队基于UniXcoder模型,在公开测试数据集(CodeXGLUE)上的代码搜索任务评测结果上取得突破,在CodeXGLUE榜单上排名中第一. 本文分享自华为云社区< ...

  3. 消除视觉Transformer与卷积神经网络在小数据集上的差距

    摘要:本文通过多种操作构建混合模型,增强视觉Transformer捕捉空间相关性的能力和其进行通道多样性表征的能力,弥补了Transformer在小数据集上从头训练的精度与传统的卷积神经网络之间的差距 ...

  4. JS引擎(0):JavaScript引擎群雄演义—起底JavaScript引擎

    JavaScript 既是一个 面向过程的语言 又是一个 面向对象的语言.在 JavaScript 中,通过在运行时给空对象附加方法和属性来创建对象,与编译语言如 C++ 和 Java 中常见的通过语 ...

  5. vue2升级vue3:class component的遗憾

    在vue2,class 写法真的非常爽 import { Component as tsc } from 'vue-tsx-support'; import { Component, Watch }  ...

  6. SBOM落地的关键一步——漏洞可利用性交流(VEX)

    SolarWinds 网络安全事件的影响,加上 Log4j 漏洞对众多知名企业产生难以估量的后果,使软件供应链安全成为安全领域的热门话题,并且SBOM现在成为网络安全漏洞计划的一个重要组成部分. SB ...

  7. 用 Java?试试国产轻量的 Solon v1.10.7

    Java 国产的轻量级应用开发框架.可用来快速开发 Java 应用项目.主框架仅 0.1 MB.Helloworld: @Controller public class App { public st ...

  8. vim-修改键盘Tab键为四个空格

    在 /etc/vimrc 文件后添加一行 set ts=4

  9. LVM----从CentOS7默认安装的/home中转移空间到根目录/(转载)

    本文转载地址:https://www.cnblogs.com/user-sunli/p/15484345.html LVM----从CentOS7默认安装的/home中转移空间到根目录/ 一.基础概念 ...

  10. 《consul 简易上手指南》

    consul 是一个用来做服务发现的框架,具有分布式.高可用以及可横向扩展的特性 什么是服务发现?为什么要实现服务发现? 举个常见的例子: 假设有一台 client 想要实现不同的业务,就需要调用接口 ...