双引擎接入使用文档
原理介绍
适用范围
支持Java应用在线引流自动化测试。另外请检查您的应用服务器可以正常访问域名:doom.rdc.aliyun.com
申请使用要求
流量录制回放是一个极其复杂的功能,使用有一定门槛,只有有能力使用的用户才能发挥出它的价值,因此我们对试用用户有如下要求:
企业有一套统一的中间件体系,以便于一次成功接入能快速推广。
企业至少投入一个全职研发同学或者研发能力较强的研发测试同学来参与接入以及推广工作。
申请人必须是技术主管及以上职位的同学,以确保资源投入。
联系方式
mufeng.qcg@alibaba-inc.com
接入文档
平台入口
1. 应用接入申请
doom流量录制回放是应用维度的,因此首先得申请一个接入应用。
1.1 申请方法
1.1.1 非云效应用接入申请方式
1.首先进入控制台首页,入口链接,确认阿里云能正常登录,切换工作空间到个人空间(默认情况下进入个人空间,不需要做切换)。如下图:
1.1.2 云效应用接入申请方式
1.2 审批结果
目前公测阶段由产品后台方审批,审批完成后会通过用户在rdc绑定的邮箱发送审核结果。如果在3个工作日后还未收到通知结果,请发邮箱咨询我们。 联系人: 穆风 mufeng@aibaba-inc.com
公测结束后,会把权限下放到企业管理员。
2. 快速入门
2.1 引流配置&OSS空间设置
当应用申请完毕后,请联系相关同学审核。审核完成后在申请页或者应用管理页进入刚申请好的应用进行配置。
2.1.1 引流配置
2.1.2 客户端安装
doom客户端通过设置VM javaagent参数来完成安装,当系统提示客户端没有部署成功时,点击’解决方案’会弹出如下窗口
请按提示完成clouddoom-bootstrap.jar的下载以及jvm参数的设置,然后重启应用服务。如果一切配置正常,将出现如下’绿色勾’标识,此时说明客户端已经部署正常
2.1.3 OSS空间设置
默认情况下doom提供一个默认的OSS存储空间用于试用和测试,如果要录制生产环境流量,建议购买私有的OSS空间来存储流量,请按如下提示完成私有OSS空间设置。
完成如上配置后,HTTP类型的流量已经支持自动录制和回放。若希望录制Java方法级别的录制回放,还需要进一步做JAVA接口配置。
2.2 设置JAVA流量入口的设置方法
目前支持任意spring bean或者应用中的单例进行录制回放。一般后台应用都是通过对外提供服务供给上游调用的,而服务的具体provider也是通过service bean来实现,因此针对后台应用,可以配置对应服务的bean实现流量录制回放。
2.3 镜像模式和非镜像读接口模式
2.3.1 镜像化模式
默认情况下doom会对所有支持的中间件外部请求进行镜像化mock,例如A应用通过dubbo调用B应用,那么在引流回放的时候当回放应用调用B应用时,客户端会对调用进行拦截,使用录制时的结果进行mock,避免真实调用发生。这样会带来如下好处:
避免回放产生脏数据。
保存了录制现场,避免回放因数据变化而失败。
支持线上流量到线下环境回放。
结合时间的镜像化,支持流量的持久有效。
2.3.2 非镜像化读接口模式
支持非镜像mock回放模式,但这种模式只能应用于读接口,例如查询接口,查询页面等等,但不能用户写接口,因为回放所有调用都会真实发生,会出现重复写数据问题。此模式的优势是接入配置成本会更低,且能对下游系统进行验证。配置方法:
3 检查引流回放情况
3.1 引流数据及结果查看
3.2 回放失败分析
进入查看失败原因

进入查看失败具体列表

查看具体对比失败原因,查看是否回放失败,如果没有回放失败则查看不一致字段,判断是否为噪音,如果是的话可以点击排除

排除噪音字段后保存

重跑验证(重跑的前提是回放机器客户端要正常运行)

3.3 开通opensearch&设置数据表
进入https://opensearch-cn-beijing.console.aliyun.com/#/apps并点击创建应用
选择‘标准版’并立即创建
输入应用名例如‘doom_data’进入下一步
选择‘手动创建应用结构’进入下一步
新建数据表,字段如下
字段名称 | 类型 | 主键 |
id | LITERAL | 是 |
invoke_identity | LITERAL | 否 |
timestamp | INT | 否 |
source_id | LITERAL | 否 |
container_id | INT | 否 |
trace_id | LITERAL | 否 |
item_key | LITERAL | 否 |
data_key | LITERAL | 否 |
request_json | TEXT | 否 |
response_json | TEXT | 否 |
data_record_id | INT | 否 |
字段索引设置
索引名称 | 包含字段 | 分词方式 |
id | id | 不分词 |
default | request_json、response_json | 中文-基础分词 |
invoke_identity | invoke_identity | 不分词 |
trace_id | trace_id | 不分词 |
item_key | item_key | 不分词 |
data_key | data_key | 不分词 |
time_stamp | timestamp | 不分词 |
source_id | source_id | 不分词 |
data_record_id | data_record_id | 不分词 |
在数据源设置也直接点击完成

设置默认展示字段
结果摘要设置

回到应用列表,激活应用(根据需求合理选择容量大小,也可以申请免费容量试用)
