Loadrunner基础和性能场景设置汇总
LoadRunner性能测试实验指导书

LoadRunner 性能测试实验指导书一、实验目的1. 掌握LoadRunner 8.1 操作界面的组成。
2. 着重掌握如何在不同的环境中使用LoadRunner 来作为自动化的功能测试工具。
3. LoadRunner 的性能测试流程4. LoadRunner 的主界面5. LoadRunner 的脚本录制6. LoadRunner 的场景设计7. LoadRunner 的场景监视8. LoadRunner 的结果分析二、基本知识1. 具有微软Windows 的使用经验2. 熟悉网络和浏览器知识3. 熟悉测试概念4. LoadRunner8.1 的使用概要。
三、实验设备及环境①windows 操作系统、LoadRunner8.1 应用软件②参考资料:电子稿件Mercury LoadRunner教程四、实验内容第一部分:LoadRunner 入门1. 环境配置(1)安装Mercury Tours 程序和Xitami 服务器选择"开始> 所有程序> Mercury LoadRunner > Samples Setup”安装,进行到Installation components and sub-components 时选择“WEB ”,安装完成后选择"开始> 所有程序> Mercury LoadRu nn er > Samples > Web ”查看。
(2)配置XitamiXitami 安装后默认端口为80 ,与IIS 的端口冲突,所以需要修改配置文件xitami.cfg ,将portbase=0 改为portbase=1000 ,修改完成后重新启动Xitami 服务器。
(3)启动Xitami选择“开始> 所有程序> Mercury LoadRunner > Samples > Web > Start Web Server”启动XitamiMercury Tours 程序URL 地址为:http://localhost:1080/WebTours/2. 测试Mercury Tours 程序使用LoadRunner 对Mercury Tours 程序进行负载测试。
LoadRunner使用说明书

Load Runner 使用说明一、组件:(一) VuGen:用于捕获最终用户业务流程和创建怎动化性能测试脚本。
1. 录制脚本:(1) 集合点Rendezvous(2) 验证点Check Point:文本验证点Text Check、图片验证点Image Check(3) 事务Transaction:事务开始Start Transaction、事务结束End Transaction(4) 注释与消息Comment & Message:/***/2. 增强并编辑Vuser脚本(1) 参数化:在Select next now中的参数:Sequential顺序、Random随机、Unique唯一在Update value on 参数:Each iteration每次迭代、Each occurrence每次出现、Once 一次(2) 从数据库中导入数据3. 配置动行时设置Runtime settings(运行时设置)(1) Number of Iterations:迭代次数(2) 在Preferences中的Enable image and text check在脚本中添加验证点时必须选中。
4. 在独立模式下运行Vuser脚本5. 集成Vuser脚本(二) Controller:用于组织、驱动、管理和监控负载测试。
1. 创建方案(1) 创建手动方案(2) 创建百分比模式方案(3) 创建面向目标的方案2. 计划方案(1) 开始时间(2) 方案运行设置:加压Ramp Up、持续时间Duration、减压Ramp Dowm3. 运行方案4. 监视方案(1) RuntimeGraphs(运行时图)A. Running Vusers运行时图:Running正在运行的Vuser总数、Ready完成脚本初始化部分、即可以运行的Vuser数、Finished结束运行的Vuser数,包括通过的和失败的、Error执行时发生的错误VuserB. Transaction Graphs事务监视图:Trans Response Time事务响应时间、Trans/Sec(Passed)每秒事务数(通过)、Trans/Sec(Failed/Stopped)每秒事务数(失败、停止)、Total Trans/Sec(Passed)每秒事务总数(通过)。
LoadRunner性能参数设置

加大tomcat连接数:在tomcat配置文件server.xml中的配置中,和连接数相关的参数有:minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75acceptCount:允许的最大连接数,应大于等于maxProcessors,默认值为100enableLookups:是否反查域名,取值为:true或false。
为了提高处理能力,应设置为falseconnectionTimeout:网络连接超时,单位:毫秒。
设置为0表示永不超时,这样设置有隐患的。
通常可设置为30000毫秒。
其中和最大连接数相关的参数为maxProcessors和acceptCount。
如果要加大并发连接数,应同时加大这两个参数。
web server允许的最大连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右。
weblogic 整合参数(二)2、连接池实现下面给出连接池类和连接池管理类的主要属性及所要实现的基本接口:public class DBConnectionPool implements TimerListener{private int checkedOut;//已被分配出去的连接数private ArrayList freeConnections = new ArrayList();//容器,空闲池,根据//创建时间顺序存放已创建但尚未分配出去的连接private int minConn;//连接池里连接的最小数量private int maxConn;//连接池里允许存在的最大连接数private String name;//为这个连接池取个名字,方便管理private String password;//连接数据库时需要的密码private String url;//所要创建连接的数据库的地址private String user;//连接数据库时需要的用户名public Timer timer;//定时器public DBConnectionPool(String name, String URL, String user, Stringpassword, int maxConn)//公开的构造函数public synchronized void freeConnection(Connection con) //使用完毕之后,//把连接返还给空闲池public synchronized Connection getConnection(long timeout)//得到一个连接,//timeout是等待时间public synchronized void release()//断开所有连接,释放占用的系统资源private Connection newConnection()//新建一个数据库连接public synchronized void TimerEvent() //定时器事件处理函数}public class DBConnectionManager {static private DBConnectionManager instance;//连接池管理类的唯一实例static private int clients;//客户数量private ArrayList drivers = new ArrayList();//容器,存放数据库驱动程序private HashMap pools = new HashMap ();//以name/value的形式存取连接池//对象的名字及连接池对象static synchronized public DBConnectionManager getInstance()//如果唯一的//实例instance已经创建,直接返回这个实例;否则,调用私有构造函数,创//建连接池管理类的唯一实例private DBConnectionManager()//私有构造函数,在其中调用初始化函数init()public void freeConnection(String name, Connection con)// 释放一个连接,//name是一个连接池对象的名字public Connection getConnection(String name)//从名字为name的连接池对象//中得到一个连接public Connection getConnection(String name, long time)//从名字为name//的连接池对象中取得一个连接,time是等待时间public synchronized void release()//释放所有资源private void createPools(Properties props)//根据属性文件提供的信息,创建//一个或多个连接池private void init()//初始化连接池管理类的唯一实例,由私有构造函数调用private void loadDrivers(Properties props)//装载数据库驱动程序}3、连接池使用上面所实现的连接池在程序开发时如何应用到系统中呢?下面以Servlet为例说明连接池的使用。
Loadrunner使用手册整理版

一、Loadrunner简介LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。
通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。
通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
目前企业的网络应用环境都必须支持大量用户,网络体系架构中含各类应用环境且由不同供应商提供软件和硬件产品。
难以预知的用户负载和愈来愈复杂的应用环境使公司时时担心会发生用户响应速度过慢,系统崩溃等问题。
这些都不可避免地导致公司收益的损失。
Mercury Interactive 的 LoadRunner 能让企业保护自己的收入来源,无需购置额外硬件而最大限度地利用现有的IT 资源,并确保终端用户在应用系统的各个环节中对其测试应用的质量,可靠性和可扩展性都有良好的评价。
LoadRunner 是一种适用于各种体系架构的自动负载测试工具,它能预测系统行为并优化系统性能。
LoadRunner 的测试对象是整个企业的系统,它通过模拟实际用户的操作行为和实行实时性能监测,来帮助您更快的查找和发现问题。
此外,LoadRunner 能支持广范的协议和技术,为您的特殊环境提供特殊的解决方案。
负载测试通常由五个阶段组成:计划、脚本创建、场景定义、场景执行和结果分析。
.(1)计划负载测试:定义性能测试要求,例如并发用户的数量、典型业务流程和所需响应时间。
.(2)创建 Vuser 脚本:将最终用户活动捕获到自动脚本中。
选择协议录制脚本编辑脚本检查修改脚本是否有误(3)定义场景:使用LoadRunner Controller 设置负载测试环境。
创建场景(Scenario)选择脚本设置机器虚拟用户数设置Schedule (场景计划表)如果模拟多机测试,设置Ip Spoofer (ip 欺骗)(4)运行场景:通过LoadRunner Controller 驱动、管理和监控负载测试。
LoadRunner讲义

LoadRunner讲义1. 介绍LoadRunner是一款功能强大的性能测试工具,可以帮助开发人员评估和优化软件系统的性能。
本讲义将介绍LoadRunner的根本概念、使用方法以及常见的性能测试场景。
2. LoadRunner的概述LoadRunner是由Micro Focus公司开发的一款性能测试工具。
它可以模拟多种负载条件下的用户行为,从而测试软件系统在不同负载情况下的性能表现。
LoadRunner的核心组件包括虚拟用户生成器〔Virtual User Generator,简称VUGen〕、场景设计器〔Controller〕和分析器〔Analyzer〕。
通过这些组件,开发人员可以录制用户行为、设计测试场景以及分析测试结果。
3. LoadRunner的安装与配置要使用LoadRunner进行性能测试,需要先进行安装和配置。
在安装LoadRunner之前,需要确保系统满足最低硬件要求,并关闭杀毒软件等干扰性软件。
安装过程中,可以选择安装所需的组件和功能。
安装完成后,需要进行一些配置,包括设置代理效劳器、配置网络和浏览器等。
这些配置可以根据具体需求进行调整。
4. LoadRunner脚本录制与回放使用LoadRunner进行性能测试的第一步通常是录制用户脚本。
用户脚本定义了用户的行为,在测试过程中会被LoadRunner自动执行。
可以通过VUGen录制用户脚本,也可以手动编写脚本。
录制完成后,可以进行回放测试,即使用录制的用户脚本模拟多个用户并发访问系统。
通过回放测试,可以评估系统在多用户访问下的性能表现。
5. LoadRunner测试场景设计在LoadRunner中,可以设计各种不同的测试场景。
测试场景由多个虚拟用户组成,每个虚拟用户都有自己的行为和负载条件。
可以设定虚拟用户的数量、各自的执行顺序和持续时间等参数。
在设计测试场景时,需要根据实际情况模拟真实用户的行为。
可以设置不同用户的登录、搜索、购置等操作,以及各操作的时间间隔、持续时间等参数。
Loadrunner中参数的设置(五篇模版)

Loadrunner中参数的设置(五篇模版)第一篇:Loadrunner中参数的设置Loadrunner中参数的设置在做负载或者压力测试时,很多人选择使用了Loadrunner测试工具。
该工具的基本流程是先将用户的实际操作录制成脚本,然后产生数千个虚拟用户运行脚本(虚拟用户可以分布在局域网中不同的PC 机上),最后生成相关的报告以及分析图。
但是在录制脚本的过程中会遇到很多实际的问题,比如不同的用户有不同的使用数据,这就牵涉到参数的设置问题。
本文就Loadrunner中参数的设置进行说明,希望对大家有所帮助。
录制程序运行的过程中,VuGen(脚本生成器)自动生成了包含录制过程中实际用到的数值的脚本。
如果你企图在录制的脚本中使用不同的数值执行脚本的活动(如查询、提交等等),那么你必须用参数值取代录制的数值。
这个过程称为参数化脚本。
本文主要包括如下内容:理解参数的局限性、建立参数、定义参数的属性、理解参数的类型、为局部数据类型设置参数的属性、为数据文件设置参数的属性、从已经存在的数据库中引入数据。
除了GUI,以下的内容适合于各种类型的用户脚本。
一、关于参数的定义在你录制程序运行的过程中,脚本生成器自动生成由函数组成的用户脚本。
函数中参数的值就是在录制过程中输入的实际值。
例如,你录制了一个Web应用程序的脚本。
脚本生成器生成了一个声明,该声明搜索名称为“UNIX”的图书的数据库。
当你用多个虚拟用户和迭代回放脚本时,也许你不想重复使用相同的值“UNIX”。
那么,你就可以用参数来取代这个常量。
结果就是你可以用指定的数据源的数值来取代参数值。
数据源可以是一个文件,也可以是内部产生的变量。
用参数表示用户的脚本有两个优点:① 可以使脚本的长度变短。
② 可以使用不同的数值来测试你的脚本。
例如,如果你企图搜索不同名称的图书,你仅仅需要写提交函数一次。
在回放的过程中,你可以使用不同的参数值,而不只搜索一个特定名称的值。
LoadRunner教程场景参数设计

由于场景中脚本繁多,同时设置60个脚本的“运行时设置”会提示个数限制信息,这时可以考虑通过场景的参数文件配置来批量解决这些事情,主要是提高工作效率。
选中自己保存的controller场景,鼠标右键点击编辑,就会打开场景的数据信息,就叫它参数文件吧。
Loadrunner11 以前的版本,参数后面要加上引号"",比如UseThreads="1"、Options="NOTHINK"1、各脚本运行时设置参数:在对应的脚本下面均有一个Config参数UseThreads=1 #使用线程运行并发用户UseThreads=0 #使用进程运行并发用户一般为1,使用线程跑并发ContinueOnError=1 #选中表示在出现error时,继续运行场景ContinueOnError=0 #不选中表示在出现error时,继续运行场景一般为1AutomaticTransactions=1 #该参数为1,表示选中Define each action as a transactionAutomaticTransactions=0 #该参数为0,表示不选中Define each action as a transaction一般为0AutomaticTransactionsPerFunc=1 #该参数为1,表示选中Define each step as a transactionAutomaticTransactionsPerFunc=0 #该参数为0,表示选中Define each step as a transaction一般为0[ThinkTime]Options=NOTHINK #忽略思考时间Options=RECORDED #使用录制到的思考时间一般为NOTHINK,忽略掉思考时间[LOG]LogOptions=LogDisabled #关闭日志,一般在运行场景中关闭日志,为场景速度助力LogOptions=LogBrief #打开标准日志LogOptions=LogExtended #打开扩展日志[扩展日志]在打开扩展日志时,下面log选项才有效MsgClassParameters=0 #在日志中不显示参数化或者关联数据MsgClassParameters=1 #在日志中显示参数化或者关联数据MsgClassData=0 #在日志中不返回服务器返回数据MsgClassData=1 #在日志中返回服务器返回数据MsgClassFull=0 #不选择高级跟踪,即Advanced traceMsgClassFull=1 #高级跟踪,即Advanced trace2、[ConfigUsp]中可以批量设置pacing时间RunLogicPaceConstTime="0.210" #设置pacing时间,默认是60.000,注意小数点后保留3位小数3、批量选中所有脚本Enabled=1 #选中脚本Enabled=0 #不选中脚本,即该脚本不参与本场景测试压测4、批量修改脚本所在PathPath。
loadrunner性能脚本的常用设置

一、关于脚本1.当脚本代码很长时,为了显示更清晰,可以在脚本中点击右键如下图,选择ExpandAll/Collapse All。
脚本函数就会以“-”展开或“+”折叠。
2.快速定位日志:在脚本中选择函数—>右键,选择Go to Step in Replay Log,就能在Replay Log中找到相应函数输出的日志。
3.快速定位代码行:在脚本中点击右键,选择Go to Line,在弹出框中输入数字,即能定位到指定的代码行。
4.快速打开脚本文件所在位置:在脚本中点击右键,选择Open Script Directory,即能打开脚本文件所在的文件夹。
5.插入断点:在光标停留的代码行处,按下"F9",或通过下图操作。
6.单步调试:按下"F9",或通过下图操作。
二、通用页设置通用页设置位置:VuGen—>Tools—>General Option1.运行脚本时,函数间等待的时间间隔(单位毫秒)设置:操作如下图。
主要实现脚本减速运行。
2.修改脚本字体设置:操作见下图。
由于LR是英文版的,当有些字符显示有问题时(如“/”会显示成“¥”),可考虑设置该选项。
3.选择脚本比较工具设置:操作见下图。
如果不选,默认使用的是WinDiff工具。
4.回放时浏览器与脚本同步显示设置:操作如下图。
三、运行时设置运行时设置位置:VuGen—>Vuser—>Run-time Settings,或打开脚本后直接按“F4”1.脚本迭代次数设置:操作见下图。
每个脚本部分都可插入Actions、Block,但只有Run部分的属性可以修改运行的方式,主要用于控制Action间运行的顺序。
而且只有Run logic为Random时才能点击Run 中每个Action的属性设置其百分率,主要用于控制每个Action的并发数。
2.脚本迭代间的等待时间设置:4.带宽模拟方式设置:操作见下图。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
33
Analysis-LR常用性能指标
响应时间(Response Time)
从用户的角度,响应时间=C1+C2)+(A1+A2+A3)+(N1+N2+N3+N4); 从系统的角度,响应时间包括(A1+A2+A3)+(N1+N2+N3+N4)。 用户能够接受的响应时间最大不超过 8s
TPS(Transaction Per Second)
50 100 Vusers 50
为剖析一个混合的、复杂的用户组,基 于一个场景中用户角度对几个虚拟脚本 分别分配。
29
Controller-计划场景
• 配置持续时间 • 配置场景的启动和停止的步长 • 初始化Vuser
30
Controller-配置监控器
添加系统资源监控器
方法: 1. 在监控器面版中单击右键
Controller是创 建、维护、执行 和监控场景的管 理中心。
在场景执行期间
控制各个Vusers (初始化,运行, 暂停, 停止)
显示各个Vuser的运行状态 显示来自各个Vuser的消息 监控系统和网络的资源
在执行完场景之后
收集和组织性能参数 启动分析工具 (可选)
25
LoadRunner 事务测量客户端和服务器端之间的请求 和响应时间。
14
VuGen-参数
输入到系统的值 是多样的
真实用户
输入到系统的值 是个静态值
录制的脚本 (虚拟用户)
为了模拟真实世界的用户操作和创建真实的结果
15
VuGen-参数
• 什么时候设置参数 1、数据有唯一性约束 2、数据依赖性
账户 A 账户A 账户A 未参数化的脚本 平均搜索时间 – 2.5 秒
26
Controller-虚拟用户脚本 选择虚拟用户脚本
在可用的脚本列表 中选择一个或多个 脚本;
27
Controller-负载产生器
• 添加负载产生器 • 选择平台 • 连接负载产生器 • 配置负载产生器的设置
28
Controller-分配虚拟用户
Business Process - purchase ticket Number of Users 200 (100%)
22
VuGen-核心系统
• 协议的选择 --Socket协议 • 通讯方式 --TCP • 报文格式 --XML --VOST
23
VuGen-网银系统
• 协议的选择 --Http协议 • 通讯方式 --TCP
24
Controller-介绍
在执行场景之前
设计场景
启动场景 同时跑多个Vusers
初始化
运行 1 次
然后
Action 1
交易1 交易2
运行 3 次
然后
Action 2
交易3
运行 5 次
然后
vuser_end
结束
运行 1 次
13
VuGen-事务
LoadRunner “事务” 测量的是什么时间?
发出请求 (事务开始) 登录事务 执行了8秒钟 用户 返回响应 (事务结束) Web 服务器
10
VuGen-创建脚本过程
1
计划
2
录制 录制一个虚拟 用户脚本
3
增强
4
测试
• 事务 • 检查点 • 参数化 • 关联
收集相关的 测试信息
回放脚本来验证 脚本的正确性
11
VuGen-协议的选择
• LR支持的协议
• LR协议探测器
12
VuGen-脚本的组成
一个虚拟用户 (脚本): vuser_init
36
Analysis
• Page Download 时间图 Breakdown
找出下载耗费时 间最多的网页, 除去着段时间 帮助排除 DNS 的故障, SSL 的 故障,网络连接 的故障
37
Analysis
• Summary Report • 事务响应时间图 • TPS趋势图
38
谢谢
人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。
Controller-场景类型 手动场景 vs. 面向目标的场景
手动场景
手工控制多少用户参与运行以及在什么时候运行;
在场景执行中,可以添加、启动和停止虚拟用户运行。
面向目标的场景
目标可能是吞吐量、响应时间、并发用户数; LoadRunner自动地管理虚拟用户 ; 在场景执行中,不能添加、启动和停止虚拟用户运行。
18
VuGen-参数选择更新方法
选择数据文件参数类型的数据访问方式
• • •
Sequential Random Unique
Select next (选择下一个数据) 告诉 LoadRunner 以什么样的顺序从 文件 (数据源) 中得到数据
19
VuGen-关联
• 为什么要做关联?
>该动态内容一定是首先是从服务器端产生并返回到客户端的。 >该客户端在得到该动态内容后一定把它重新发送到服务器端。
每秒钟系统能够处理的交易或事务数量。
并发用户
34
Analysis-Summary Report
• 提供了对某次测试的整体视图
35
Analysis
• 事务平均响应时间图
该图提供了在整 个测试过程中事 务响应时间的细 节信息。 根据该图,我们 可以确定响应时 间缓慢的事务。 根据该图,我们 可以测试过程中 出现性能问题的 转折点。
性能测试与Loadrunner
目录
性能测试过程简介
2
3
Loadrunner与实例介绍
Q&A
2
性能测试工作流程
3
性能测试准备阶段
4
性能测试实施阶段
5
性能测试报告阶段
6
目录
1
性能测试概述
Loadrunner与实例介绍
4
Q&A
7
LoadRunner
• LoadRunner是一种负载测试工具 • 轻松创建虚拟用户脚本 • 创建真实的负载 • 实时监测器 • 分析结果
3、数据缓存
1.4 秒 4.5 秒 4.5 秒 4.7 秒
账户A 账户B
1.4 秒
服 务
(speedy) ( 高速)
Cache 缓存
Database
(slow)
4.7 秒
器
账户C 参数化的脚本
平均搜索时间 – 4.6 秒
16
VuGen-参数类型
• • 内部数据 文件(现有文件或者用 VuGen 或 MS Query 创建的文件)中包 含的数据 用户自定义函数 使用外部 DLL 函数生成的数据
每次出现 “每次出现”方法指示 Vuser 在每次参数出现时使用新值。
每次迭代 “每次迭代”方法指示 Vuser 为每次脚本迭代使用新值。如果一个参数 在脚本中出现了若干次,则 Vuser 为整个迭代中所有出现的该参数使用 同一个值。 一次 “一次”方法指示 Vuser 在方案运行期间仅对参数值更新一次。Vuser 为所有出现的该参数和所有迭代使用同一个参数值。
8
LoadRunner组成
Analysis
LoadRunner
VuGen
Controller
9
LoadRunner组成
• Virtual User Generator • 用来录制脚本、编辑脚本 • Controller • 用来布置测试场景、执行测试场景 • Analysis • 用来对测试结果进行分析
• 关联的方法
确定要关联的动态内容的“左边界”、 “右边界”和发生次数
• 关联函数
web_reg_save_param
20
VuGen-总结
• • • • • 选择正确的协议 脚本的初步形成 给脚本增加事务 参数化脚本 对பைடு நூலகம்态数据进行关联
21
VuGen-核心系统
• 协议的选择 --C Vuser协议 • 通讯方式 --CICS • 报文格式 --VOST
--Vuser 内部生成的数据。这包括日期/ 时间、组名、迭代编号、负载生成器名、 随机编号、唯一编号和 Vuser ID
• •
17
VuGen-参数选择更新方法
使用“日期/ 时间”、“随机”、“唯一” 参数类型时,通过 VuGen 可以指定参数的更新方法。可用的参数更新方法有 ➤ 每次出现 ➤ 每次迭代 ➤ 一次
200 Vusers
简单的场景仅使用一个测试脚本。为剖 析该用户组,给脚本分配100% 的用户 数 (如purchase ticket脚本)
multiple scripts example
Business Process Number of Users - purchase ticket - view flights - search flights 100(50%) 50(25%) 50(25%)
2. 选择"Add Measurement(s)" 3. 选择服务器名和要监控的资 源
31