ab-container-tool是一个用于AB容器组件的sdk,主要功能为AB容器实验配置的open api调用,以及AB容器组件在渲染时的分流接口调用。
npm install @datatester/ab-container-tool --save
这里的appId是DataTester的应用ID,使用AB容器组件前需要在DataTester开通一个应用
import { AbTool } from '@datatester/ab-container-tool';
const abTool = new AbTool({
appId: 164314,
domain: 'https://analytics.volcengineapi.com/',
});
abTool.setGetToken(() => {
// 获取open-api token
});
// 创建实验
const experimentId = await abTool.createExperiment({
name: value.name,
duration: Number(value.duration),
distribute: value.distribute,
versions: value.versions,
major_metric: value.major_metric || this.defaultMajorMetric,
metrics: this.metrics.map((m) => m.id),
mode: value.type === 'mab' ? 12 : 11,
...(value.type === 'mab'
? {
mab_info: {
baseline: mabInfo.baseline,
interval_time: mabInfo.interval_time * 3600
}
} : {})
});
// 开启实验
await abTool.launchExperiment(String(value.experimentId));
// ...