EvaluationSpec contém regras para avaliar o valor de uma flag.
| Representação JSON |
|---|
{ "variants": [ { object ( |
| Campos | |
|---|---|
variants[] |
Opcional. Uma lista de variantes. |
defaultTarget |
Obrigatório. Variante ou alocação padrão da flag. |
allocations[] |
Opcional. Uma lista de alocações. |
rules[] |
Opcional. As regras de avaliação definem a lógica para avaliar a flag em relação a um contexto específico. As regras são avaliadas sequencialmente na ordem especificada. |
attributes[] |
Opcional. Nomes dos atributos de contexto usados nas regras de avaliação e alocações. |
Variante
Variante é um identificador de um valor (nome atribuído a um valor). OBSOLETO: use Flag.Variants.
| Representação JSON |
|---|
{ "name": string, // Union field |
| Campos | |
|---|---|
name |
Obrigatório. Nome da variante. Tamanho máximo: 128 bytes. |
Campo de união value. value é um único valor de flag para a variante. value pode ser apenas de um dos tipos a seguir: |
|
boolValue |
Opcional. Valor booleano da flag. |
intValue |
Opcional. Valor inteiro da flag. |
stringValue |
Opcional. Valor de string da flag. |
doubleValue |
Opcional. Valor duplo da flag. |
Alocação
A alocação define um conjunto de variantes de flag ponderadas, especificando como o tráfego é dividido com base na unidade de randomização.
| Representação JSON |
|---|
{
"id": string,
"randomizedOn": string,
"description": string,
"slots": [
{
object ( |
| Campos | |
|---|---|
id |
Obrigatório. ID da alocação. Tamanho máximo: 128 bytes. |
randomizedOn |
Obrigatório. Chave do atributo de contexto usado para dividir o tráfego. |
description |
Opcional. Descrição da alocação. Tamanho máximo: 500 bytes. |
slots[] |
Obrigatório. Os slots definem a distribuição ponderada de variantes. |
AllocationSlot
AllocationSlot especifica uma variante e a proporção de tráfego alocada a ela.
| Representação JSON |
|---|
{ "variant": string, "weight": integer } |
| Campos | |
|---|---|
variant |
Obrigatório. Variante do slot de alocação. |
weight |
Obrigatório. A ponderação define a proporção de tráfego a ser alocada à variante, em relação a outros slots na mesma alocação. |
EvaluationRule
EvaluationRule define uma única regra para avaliar uma flag de recurso. Uma regra consiste em uma condição que, se atendida, atribui uma variante ou alocação específica ao usuário.
| Representação JSON |
|---|
{ "id": string, "condition": string, "target": string } |
| Campos | |
|---|---|
id |
Obrigatório. ID da regra de avaliação. Tamanho máximo: 128 bytes. |
condition |
Obrigatório. Uma expressão da Common Expression Language (CEL) que é avaliada como booleana. A expressão é avaliada em relação ao contexto fornecido. Se ela retornar "true", o destino da regra será aplicado. |
target |
Obrigatório. A variante ou alocação de destino a ser aplicada se a condição for atendida. Isso precisa corresponder ao nome de uma variante definida ou ao ID da alocação. |