本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建受众规则
受众规则部分包括规则生成器选项卡和编辑器选项卡,用于创建规则以定位实验受众。
使用受众规则生成器
规则生成器提供了一个可视化界面,无需编写表达式即可定义受众定位规则。您可以使用属性创建条件并将它们与逻辑运算符组合在一起,以控制实验中包括哪些用户。在规则生成器中,您可以通过组合条件和组来定义规则:
条件评估单个属性(例如,
$plan equals "enterprise")。组使用逻辑运算符(如
ANDor)组合多个条件OR。
每个组的计算结果为true或false。符合总体规则的用户将包含在目标受众中。
当您想执行以下操作时,请使用规则生成器:
无需编写表达式即可快速定义或修改受众规则
可视化条件是如何分组和评估的
逐步构建和验证定位逻辑
下面是一些示例:
在高级账户等级中定位用户的规则。
使用特定电子邮件域在特定地理区域定位用户的规则。
一种规则,用于在特定计划中定位特定用户,或者在选择加入测试计划时使用二级套餐的用户。
与编辑的关系
规则生成器和编辑器以不同的格式定义相同的定位逻辑:
规则生成器提供了一种构造规则的可视化方式。
编辑器显示等效的逻辑表达式。
在一个视图中所做的更改会反映在另一个视图中。
最佳实践
保持规则的可读性 — 使用群组按逻辑组织条件,避免结构深度嵌套。
验证属性值-确保属性名称和值与应用程序提供的名称和值相匹配。
暴露前测试 — 使用 0% 的曝光率和治疗分配替代来确认您的规则是否符合预期。
使用编辑器
该编辑器允许您定义定位规则,以确定实验中包含哪些用户。您可以将这些规则指定为逻辑表达式,用于评估用户或设备属性,例如平台、区域或应用程序版本。实验运行时, AWS AppConfig 评估每个用户的表达式。符合标准的用户将包含在目标受众中,可以被分配接受治疗。
表达式格式
表达式使用前缀(函数风格)语法:
(operator argument1 argument2 ...)
例如:
(and (eq $system "iPhone") (lt $osVersion 1.8) )
此表达式包括以下用户:
使用 iPhone,然后
操作系统版本早于 1.8
编辑器支持与规则生成器相同的定位方案。有关受众规则的直观示例,请参阅使用受众规则生成器。
定义属性
属性代表正在评估的用户或环境的属性。使用$前缀引用属性。
常见示例包括:
$system— 设备或平台类型$osVersion— 操作系统版本$region— 地理区域$appVersion— 应用程序版本
可用属性取决于您的应用程序以及将数据传递到的方式 AWS AppConfig。
写作表达式
您可以使用逻辑运算符组合多个条件:
用于
and要求所有条件都为真or用于匹配任何条件not用于排除条件
示例:
(and (eq $region "us-east-1") (or (eq $system "iPhone") (eq $system "Android") ) )
此表达式针对的是使用iPhone或安卓设备的用户。us-east-1
最佳实践
从简单开始 — 从一小部分条件开始,然后根据需要进行扩展。
验证属性-确保表达式中使用的属性始终填充。
避免过于复杂的表达式 — 复杂的逻辑会使定位更难理解和维护。
暴露前测试 — 使用 0% 的曝光率和治疗分配替代来确认您的规则是否符合预期。
表达式运算符
受众表达式支持以下运算符。
逻辑运算符
| 运算符 | 描述 | 示例 |
|---|---|---|
|
and |
如果所有条件都为真,则返回 true |
|
|
或者 |
如果任何条件为真,则返回 true |
|
|
not |
如果条件为假,则返回 true |
|
比较运算符
| 运算符 | 描述 | 示例 |
|---|---|---|
|
eq |
Equals |
|
|
ne |
Not equal |
|
|
lt |
Less than |
|
|
lte |
Less than or equal |
|
|
gt |
Greater than |
|
|
gte |
Greater than or equal |
|
字符串和集合运算符
| 运算符 | 描述 | 示例 |
|---|---|---|
|
in |
匹配列表中的任何值 |
|
|
contains |
检查一个值是否包含子字符串 |
|
注意
可用运算符可能会有所不同,具体取决于应用程序中属性的定义和评估方式。