Usar segmentos para delimitar o público - Amazon CloudWatch

Usar segmentos para delimitar o público

Você pode definir segmentos de público e usá-los em seus lançamentos e experimentos. O segmento é uma parte do público que compartilha uma ou mais características. Exemplos podem ser usuários do navegador Chrome, usuários na Europa ou usuários do navegador Firefox na Europa que também atendam a outro critério que sua aplicação coleta, como idade.

Usar um segmento no experimento limita a avaliação apenas para usuários que correspondam aos critérios do segmento. Ao usar um ou mais segmentos em uma execução, você pode definir diferentes divisões de tráfego para os diferentes segmentos de público.

Sintaxe de padrões de regras de segmento

Para criar um segmento, defina uma regra de segmento pattern. Especifique os atributos que deseja usar para avaliar se uma sessão de usuário será incluída no segmento. O padrão que você cria é comparado ao valor de evaluationContext que o Evidently encontra em uma sessão de usuário. Para ter mais informações, consulte Utilizar a operação EvaluateFeature.

Para criar um padrão de regra de segmento, especifique os campos aos quais o padrão deve corresponder. Você também pode usar lógica no padrão, como And, Or, Not e Exists.

Para que evaluationContext corresponda a um padrão, evaluationContext deve corresponder a todas as partes do padrão da regra. O Evidently ignora os campos no evaluationContext que não estão incluídos no padrão da regra.

Os valores de correspondência nos padrões de regras seguem regras JSON. Você pode incluir strings entre aspas (“), números e as palavras-chave true, false e null.

No caso de strings, o Evidently usa correspondência exata caractere por caractere sem conversão de caixa alta/baixa ou normalização de strings. Portanto, as correspondências de regras diferenciam maiúsculas de minúsculas. Por exemplo, se evaluationContext incluir um atributo browser, mas seu padrão de regra verificar Browser, não haverá correspondência.

No caso de números, o Evidently usa representação de string. Por exemplo, 300, 300.0 e 3.0e2 não são considerados iguais.

Quando você grava padrões de regras para corresponder evaluationContext, pode usar a API TestSegmentPattern ou o comando da CLI test-segment-pattern para garantir que o padrão corresponda ao JSON correto. Para obter mais informações, consulte TestSegmentPattern.

O resumo a seguir exibe todos os operadores de comparação que estão disponíveis nos padrões de segmentos do Evidently.

Comparação Exemplo Sintaxe da regra

Nulo

UserID é null

{ "UserID": [ null ] }

Vazio

LastName está vazio

{ "LastName": [""] }

Igual

“Browser” (Navegador) é “Chrome”

{ "Browser": [ "Chrome" ] }

E

“Country” (País) é “França” e “Device” (Dispositivo) é “Móvel”

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

Ou (vários valores de um único atributo)

“Browser” (Navegador) é “Chrome” ou “Firefox”

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

Ou (atributos diferentes)

“Browser” (Navegador) é “Safari” ou “Device” (Dispositivo) é “Tablet”

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

Não

“Browser” (Navegador) é qualquer valor exceto “Safari”

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

Numérico (é iguais a)

Price é 100

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

Numérico (intervalo)

Price é superior a 10 e menor que ou igual a 20

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

Existe

Existe um campo “Age” (Idade)

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

Não existe

Não existe um campo “Age” (Idade)

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

Começa com um prefixo

“Regio” (Região) está nos Estados Unidos

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

Termina com um sufixo

A localização tem um sufixo “West” (Oeste)

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

Exemplo de regras de segmentos

Todos os exemplos a seguir pressupõem que você está passando valores para evaluationContext com os mesmos rótulos de campo e valores que está usando nos padrões de regras.

O exemplo a seguir encontrará uma correspondência se o Browser for Chrome ou Firefox e o Location for US-West (Oeste dos EUA).

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

O exemplo a seguir encontrará uma correspondência se Browser for qualquer navegador exceto Chrome, Location começar com US e houver um campo Age existente.

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

O exemplo a seguir encontrará uma correspondência se Location for “Japan” (Japão) e Browser for Safari ou Device for Tablet.

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

Criar um segmento

Após criar um segmento, você poderá usá-lo em qualquer execução ou experimento em qualquer projeto.

Para criar um segmento
  1. Abra o console CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação, escolha Application Signals e, em seguida, Evidently.

  3. Escolha a guia Segments (Segmentos).

  4. Selecione Criar um segmento.

  5. Em Segment name (Nome do segmento), insira o nome a ser usado para identificar o segmento.

    Opcionalmente, adicione uma descrição.

  6. Em Segment pattern (Padrão de segmento), insira um bloco JSON para definir o padrão de regra. Para obter mais informações sobre a sintaxe do padrão de regras, consulte Sintaxe de padrões de regras de segmento.