使用细分来聚焦受众 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用细分来聚焦受众

您可以定义受众细分并将它们用于发布和实验中。细分是您的受众中具有一个或多个相同特征的部分。例如 Chrome 浏览器用户、欧洲用户或欧洲的 Firefox 浏览器用户,他们也符合您的应用程序收集的其他标准,例如年龄。

在实验中使用细分将该实验限制为仅评估符合细分标准的用户。当您在发布中使用一个或多个细分时,您可以为不同的受众细分定义不同的流量拆分。

细分规则模式语法

要创建细分,请定义细分规则模式。指定要用于评估用户会话是否在细分中的属性。将您创建的模式与 Evidently 在用户会话中找到的 evaluationContext 的值进行比较。有关更多信息,请参阅使用 EvaluateFeature

要创建细分规则模式,请指定希望模式匹配的字段。您也可以在模式中使用逻辑,例如 AndOrNotExists

为了使 evaluationContext 匹配模式,evaluationContext 必须匹配规则模式的所有部分。Evidently 忽略了 evaluationContext 中并不包含在规则模式中的字段。

规则模式匹配的值遵循 JSON 规则。可以包括用引号(")括起来的字符串、数字和关键字 truefalsenull

对于字符串,Evidently 使用精确的逐个字符匹配,而不进行小写化或任何其他字符串标准化。因此,规则匹配区分大小写。例如,如果您的 evaluationContext 包含一个 browser 属性,但您的规则模式检查 Browser,则它将不匹配。

此外,Evidently 使用字符串表示。例如,300、300.0 和 3.0e2 不相等。

在编写规则模式来匹配 evaluationContext 时,您可以使用 TestSegmentPattern API 或 test-segment-pattern CLI 命令以测试模式是否匹配正确的 JSON。有关更多信息,请参阅 TestSegmentPattern

以下摘要显示了可在 Evidently 细分模式使用的所有比较运算符。

Comparison(比较) 示例 Rule syntax(规则语法)

Null

用户 ID 为空

{ "UserID": [ null ] }

姓氏为空

{ "LastName": [""] }

等于

浏览器是“Chrome”

{ "Browser": [ "Chrome" ] }

And

国家/地区为“"法国”,设备为“移动设备”

{ "Country": [ "France" ], "Device": ["Mobile"] }

或(单个属性的多个值)

浏览器是“Chrome”或“Firefox”

{ "Browser": ["Chrome", "Firefox"] }

或(不同的属性)

浏览器为“Safari”或设备为“平板电脑”

{ "$or": [ {"Browser": ["Safari"]}, {"Device": ["Tablet"}] ] }

Not

浏览器是除“Safari”以外的任何浏览器

{ "Browser": [ { "anything-but": [ "Safari" ] } ] }

数值(等于)

价格为 100

{ "Price": [ { "numeric": [ "=", 100 ] } ] }

数值(范围)

价格大于 10,且小于等于 20

{ "Price": [ { "numeric": [ ">", 10, "<=", 20 ] } ] }

存在

年龄字段存在

{ "Age": [ { "exists": true } ] }

不存在

年龄字段不存在

{ "Age": [ { "exists": false } ] }

开头为前缀

地区位于美国

{ "Region": [ {"prefix": "us-" } ] }

结尾为后缀

位置有后缀“West”

{ "Region": [ {"suffix": "West" } ] }

细分规则示例

以下所有示例都假定您正在使用您在规则模式中使用的相同字段标签和值传递 evaluationContext 的值。

如果 Browser 为 Chrome 或 Firefox 且 Location 为美国西部,则以下示例匹配。

{ "Browser": ["Chrome", "Firefox"], "Location": ["US-West"] }

如果 Browser 是除 Chrome 以外的浏览器,LocationUS 开头且 Age 字段存在,则以下示例匹配。

{ "Browser": [ {"anything-but": ["Chrome"]}], "Location": [{"prefix": "US"}], "Age": [{"exists": true}] }

如果 Location 为日本且 Browser 为 Safari 或 Device 为平板设备,则以下示例匹配。

{ "Location": ["Japan"], "$or": [ {"Browser": ["Safari"]}, {"Device": ["Tablet"]} ] }

创建分段

创建细分后,您即可在任何项目的任何发布或实验中使用它。

创建分段
  1. 访问 https://console.aws.amazon.com/cloudwatch/ 打开 CloudWatch 控制台。

  2. 在导航窗格中,选择 Application SignalsEvidently

  3. 选择 Segments(细分)选项卡。

  4. 选择创建客户细分

  5. 对于 Segment name(细分名称),请输入用于标识此细分的名称。

    或者,添加描述。

  6. 对于 Segment pattern(细分模式),请输入定义规则模式的 JSON 块。有关规则模式语法的更多信息,请参阅 细分规则模式语法