Dela via


Använda variantfunktionsflaggor

Med variantfunktionsflaggor kan ditt program ha stöd för flera varianter av en funktion. Varianterna av din funktion kan tilldelas till specifika användare, grupper eller percentil bucketar. Dessa flaggor kan vara användbara för funktionsdistributioner, konfigurationsdistributioner och funktionsexperiment (kallas även A/B-testning).

Vad är en variantfunktionsflagga?

En variantfunktionsflagga är en förbättrad funktionsflagga som stöder flera tillstånd eller varianter. Även om det fortfarande kan växlas på eller av, tillåter det också olika varianter med konfigurationer. En variant definieras med ett namn och ett valfritt konfigurationsvärde. Namnet är en identifierare för att skilja varianter åt. Konfigurationsvärdet kan variera från enkla JSON-primitiver till komplexa JSON-objekt. Du kan använda varianter för att särskilja funktioner eller användarupplevelser och eventuellt konfigurera dessa funktioner eller användarupplevelser med olika konfigurationsvärden. Dessutom innehåller en variantfunktionsflagga allokeringsregler som definierar målgruppen för varje variant.

Varianter

I följande exempel visas två varianter med JSON-objekt för konfigurationsvärdet.

Variantnamn Variantkonfigurationsvärde
Minimal { "maxitems": 10, "showAds": false }
Standard { "maxitems": 30, "showAds": true }

Allokering

Allokering styr vilket segment av användare som får varje variant. I följande exempel allokeras 10 % av användarna för att få minimal variant och 90 % för att hämta standardvarianten.

Variant Allokering Kommentarer
Minimal 10 % Tilldela varianten till användare i den 0:e till tionde percentilen.
Standard 90 % Tilldela varianten till användare i den 10:e till 100:e percentilen.

Åsidosättningar

Du kan tilldela varianter till specifika grupper eller användare oavsett procentallokering. I följande exempel tilldelas användare i gruppen Betatestare minimal variant.

Gruppnamn Variant
Betatestare Minimal

Standardvarianter och kill switch

Variantfunktionsflaggor har två standardvarianter, DefaultWhenEnabled och DefaultWhenDisabled.

  • Varianten DefaultWhenEnabled börjar gälla om flaggan är aktiverad men allokeringen inte tilldelar alla percentiler. Alla användare som placeras i en otilldelad percentil tar emot varianten DefaultWhenEnabled .
  • Varianten DefaultWhenDisabled börjar gälla om flaggan är inaktiverad, vilket görs genom att fältet Aktiverad anges till false, även kallat "kill switch".

Kill-växeln används för att hindra användare från att allokera. Används när en eller flera av varianterna har ett problem, oavsett om det är en bugg, regression eller dålig prestanda. Om du vill använda kill-växeln anger du fältet Aktiverat för variantflaggan till false. Alla användare får nu varianten DefaultWhenDisabled , oavsett vilka percentiler eller åsidosätter användare/grupper som de ingick i.

Skapa en app med en variantfunktionsflagga

I den här självstudien skapar du en webbapp med namnet Dagens offert. När appen läses in visas ett citattecken. Användare kan interagera med hjärtknappen för att gilla den. För att förbättra användarengagemanget vill du utforska om ett personligt hälsningsmeddelande ökar antalet användare som gillar offerten. Användare som får varianten Ingen ser ingen hälsning. Användare som får den enkla varianten får ett enkelt hälsningsmeddelande. Användare som får den långa varianten får en något längre hälsning.

Förutsättningar

Skapa en variantfunktionsflagga

  1. Skapa en variantfunktionsflagga med namnet Greeting utan etikett i appkonfigurationsarkivet. Den innehåller tre varianter: None, Simple och Long, som var och en motsvarar olika hälsningsmeddelanden. Se följande tabell för deras konfigurationsvärden och allokeringsinställningar. Mer information om hur du lägger till en variantfunktionsflagga finns i Skapa en variantfunktionsflagga.

    Variantnamn Variantkonfigurationsvärde Allokering
    Ingen (standard) NULL 50 %
    Enkel "Hej!" 25 %
    Long "Jag hoppas att detta gör din dag!" 25 %
  2. Fortsätt med följande instruktioner för att använda variantfunktionsflaggan i ditt program för det språk eller den plattform du använder.