一、介绍

执行器(AngusRunner)提供两个方面作用:

  1. 执行控制器(AngusCtrl)下发给代理程序(AngusAgent)的运行测试和模拟数据任务,并将测试结果发送到服务端。
  2. 提供通过AngusRunner命令行方式运行测试和模拟数据任务方式,如果是本地模式(LOCAL),会生成测试结果并结果输出到控制台。

二、安装

注意:在已安装节点代理完整包节点上,无须重复进行安装,执行器已被安装到与节点代理程序相同目录,下面安装只适用用户想独立运行测试和模拟数据任务场景。

第一步:点击下载 AngusRunner 安装包。

第二步:下载安装包后,将安装包移动到自定义安装目录并解压。

第三步:配置执行所属租户、用户访问令牌、设备ID、设备访问令牌,远程模式时(REMOTE)必须。

在AngusTester"节点"添加当前执行器(AngusRunner)节点后,点击已添加节点"手动安装代理"->“安装配置信息”
,如下图:
AngusTester安装执行器-LMLPHP
用户访问令牌请在AngusTester"个人中心"->"访问令牌"中查看或配置。

修改conf/runner.properties中配置如下:

angusrunner.principal.tenantId=1
# 用户访问令牌
angusrunner.principal.accessToken=0ST.4rocXHMRRMyYQHB4xbCDmVRTQGrwMWVU.9289d89f639544989a3d4beaa2e2ac57
angusrunner.principal.deviceId=205198142092607130

修改conf/exchange.properties中配置如下:

# 设备访问令牌
exchange.ctrlAccessToken=2PT.uk3dciHZyVVt8zBdnxOgcz4BpGNuNl3u.d241ce59daa19ns51b2e6528a3dcf7ab5

其他配置信息请查看下面"配置"说明。

三、配置

  • 数据交换器配置(runner.properties)
## 执行线程前缀,默认为AngusRunner-Threads。
angusrunner.threadNamePrefix=AngusRunner-Thread
#-----------------------------------------------------------------------------------
# Angus执行器身份配置
#-----------------------------------------------------------------------------------
## 执行器的租户ID,私有版本环境时需要手动配置,默认为空。
angusrunner.principal.tenantId=1
## 当前用户访问令牌,手动启动运行器所需,默认为空。
angusrunner.principal.accessToken=0ST.4rocXHMRRMyYQHB4xbCDmVRTQGrwMWVU.9289d89f639544989a3d4beaa2e2ac57
## 执行器所在设备(节点)ID,私有版本环境时需要手动配置,默认为空。
angusrunner.principal.deviceId=187166587336261669
#-----------------------------------------------------------------------------------
# Angus执行器配置
#-----------------------------------------------------------------------------------
## 执行器执行模式包括两个选项:LOCAL(本地)和REMOTE(远程)。注意:命令行中配置参数优先级高于配置文件。
# 当处于本地模式时,它仅在本地运行,测试结果和报告仅保存在本地,执行器身份配置是非必须的。
# 当处于远程模式时,测试结果和报告将保存到服务器,执行器身份配置是是必须的,默认为本地模式(LOCAL)。
angusrunner.runner.runMode=LOCAL
#-----------------------------------------------------------------------------------
# Angus执行器采样配置
#-----------------------------------------------------------------------------------
# 启用后,采样ID将写入HTTP请求标头,默认情况下启用。
angusrunner.sampling.writeSampleIdToHeader=true
#-----------------------------------------------------------------------------------
# Angus执行器推送配置
#-----------------------------------------------------------------------------------
# 执行器JVM指标的时间间隔,默认为15秒。
angusrunner.jvmMetrics.pushIntervalInSecond=15
# 执行器JVM指标的超时时间,默认为15秒。
angusrunner.jvmMetrics.pushTimeoutInSecond=15
# 执行器任务采样的时间间隔,默认为 5 秒。
angusrunner.taskMetrics.pushIntervalInSecond=5
# 执行器任务采样的超时时间,默认为10秒。
angusrunner.taskMetrics.pushTimeoutInSecond=10
  • 数据交换器配置(exchange.properties)
#-----------------------------------------------------------------------------------
# 推送客户端配置
#-----------------------------------------------------------------------------------
# 交换服务器主机,在直接连接模式下仅用于测试环境,默认为127.0.0.1:5035。
# exchange.serverHost=127.0.0.1:5035
## 配置访问控制器(AngusCtrl)API所需的访问令牌,在私有版环境手动启动时需要,默认为空。
exchange.ctrlAccessToken=2PT.uk3dciHZyVVt8zBdnxOgcz4BpGNuNl3u.d241ce59daa19ns51b2e6528a3dcf7ab5
# 控制器服务发现URL前缀,如果未配置或连接异常,将使用serverHost的值作为控制器连接地址。
exchange.ctrlUrlPrefix=https://bj-c1-prod-apis.xcan.cloud/alctrl/openapi2p/v1/ctrl
# 同时进行客户端推送请求的数量,默认为1。
exchange.clientNum=1
## 客户端推送请求线程数,如果为零,则表示根据CPU核心数调整线程数2*cpu个线程池在客户端上运行,默认为1。
exchange.clientWorkNum=5
# 客户端连接的身份验证和绑定超时时间,默认为20秒。
exchange.clientAuthTimeout=20000
#-----------------------------------------------------------------------------------
# 推送客户端和服务端公共配置
#-----------------------------------------------------------------------------------
# 处理请求的线程前缀,默认为Exchange。
exchange.threadNamePrefix=Exchange
# exchange.serverHosts=127.0.0.1:5035,127.0.0.1:5036
# 允许的最大超时次数,超过该次数将停止发送,默认为5。
exchange.allowMaxTimeoutTimes=5
# 推送定时器线程的数量,默认为5。
exchange.pushTimerThreadNum=5
# 推送定时器线程的优先级,默认为Threads.NORM_PRIORITY + 2。
exchange.pushTimerThreadPriority=7
# 推送超时时间,PushContext的超时设置具有更高的优先级,默认为15000毫秒。
exchange.pushTimeout=15000
# 推送器ACK确认线程的数量,默认为1。
exchange.ackThreadNum=1
# 推送器ACK确认线程的优先级,默认为Threads.NORM_PRIORITY + 2。
exchange.ackThreadPriority=7
#-----------------------------------------------------------------------------------
# 推送安全配置
#-----------------------------------------------------------------------------------
exchange.securityPublicKey=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC4Y1ChYPYPDKuKbawHF4Go9Ewp54eB39czWY2h9XcTs24jXkvmR6dHg06Zj0intj/HLsTHa+FEy14yLE6JYH3dd9qHqCRiMXKktm7g3EceA5mehbbgqDs8jxet7chQz56v925pHsl1z82OIzpJXhXgChQd5HXY5OKYaWvFvbyYWwIDAQAB

四、运行

请查看:AngusRunner命令行

05-07 10:24