Sdílet prostřednictvím


Povolení telemetrie pro příznaky funkcí v aplikaci ASP.NET Core

V tomto kurzu použijete telemetrii ve své aplikaci ASP.NET Core ke sledování vyhodnocení příznaků funkcí a vlastních událostí. Telemetrie umožňuje činit informovaná rozhodnutí o strategii správy funkcí. Příznak funkce použijete s povolenou telemetrií vytvořenou v přehledu pro povolení telemetrie pro příznaky funkcí. Než budete pokračovat, ujistěte se, že vytvoříte příznak funkce s názvem Greeting v úložišti konfigurace s povolenou telemetrií. Tento kurz vychází z kurzu o použití příznaků variant funkcí v aplikaci ASP.NET Core.

Požadavky

Přidání telemetrie do aplikace ASP.NET Core

  1. Přidejte nejnovější verzi balíčku Application Insights.

    dotnet add package Microsoft.ApplicationInsights.AspNetCore
    dotnet add package Microsoft.FeatureManagement.Telemetry.ApplicationInsights
    
  2. Přidejte do kontejneru telemetrické služby Application Insights. Za řádek, který přidá Azure App Configuration, přidejte následující kód.

    // Add Application Insights telemetry
    builder.Services.AddApplicationInsightsTelemetry(options =>
    {
        options.ConnectionString = builder.Configuration.GetConnectionString("ApplicationInsights");
    });
    
  3. Aktualizujte služby správy funkcí, aby se povolilo publikování telemetrie. Upravte existující konfiguraci správy funkcí tak, aby zahrnovala AddApplicationInsightsTelemetry() volání.

    // Add Azure App Configuration and feature management services to the container.
    builder.Services.AddAzureAppConfiguration()
        .AddFeatureManagement()
        .WithTargeting()
        .AddApplicationInsightsTelemetry();
    
  4. Přidejte cílové middleware pro spojení odchozích událostí s ID cílení. Za řádek app.UseAzureAppConfiguration();přidejte následující kód .

    // Use targeting middleware to associate events with the targeting ID
    app.UseMiddleware<TargetingHttpContextMiddleware>();
    

Sledování vlastních událostí

Nyní přidáte vlastní událost pro sledování, kdy uživatelé označí, že se jim citát líbí. Vytvoříte back-endový koncový bod pro zpracování podobné akce a jeho sledování pomocí Application Insights.

  1. V Index.cshtml.cs přidejte příkaz using pro Application Insights.

    using Microsoft.ApplicationInsights;
    
  2. Upravte nastavení IndexModel , abyste získali TelemetryClient.

    public class IndexModel(
            TelemetryClient telemetry,
            ILogger<IndexModel> logger,
            IVariantFeatureManagerSnapshot featureManager
        ) : PageModel
    {
        private readonly TelemetryClient _telemetry = telemetry;
    
  3. Kromě toho přidejte funkci OnPostLike(), která při použití koncového bodu sleduje událost s názvem "Lajk".

    public IActionResult OnPostLike()
    {
        _telemetry.TrackEvent("Liked");
        return new JsonResult(new { success = true });
    }
    
  4. V souboru Index.cshtml přidejte před značku skriptu antiforgery token.

    <form method="post" style="display:none;">
        @Html.AntiForgeryToken()
    </form>
    
    <script>
        ...
    
  5. Upravte funkci heartClicked následujícím obsahem.

    async function heartClicked(button) {
        const response = await fetch(`?handler=Like`, { method: "POST" });
        if (response.ok) {
            const data = await response.json();
            if (data.success) {
                var icon = button.querySelector('i');
                icon.classList.toggle('far');
                icon.classList.toggle('fas');
            }
        }
    }
    

    Metoda OnPostLike zpracovává akci Like. Používá TelemetryClient ke sledování vlastní události "Lajk", když uživatel klikne na tlačítko srdce.

Sestavení a spuštění aplikace

  1. Application Insights vyžaduje připojovací řetězec pro připojení k prostředku Application Insights. ConnectionStrings:ApplicationInsights Nastavte tajný kód uživatele.

    dotnet user-secrets set ConnectionStrings:ApplicationInsights "<your-Application-Insights-Connection-String>"
    
  2. Po nastavení proměnné prostředí restartujte terminál a znovu sestavte a spusťte aplikaci.

    dotnet build
    dotnet run
    

Shromažďování telemetrie

Nasaďte aplikaci, abyste mohli začít shromažďovat telemetrii od uživatelů. Pokud chcete otestovat jeho funkce, můžete simulovat aktivitu uživatelů vytvořením mnoha testovacích uživatelů. Každý uživatel se setká s jednou z variant uvítací zprávy a může s aplikací komunikovat kliknutím na tlačítko srdce, čímž označí citát jako oblíbený. S růstem uživatelské základny můžete monitorovat rostoucí objem telemetrických dat shromážděných v Azure App Configuration. Kromě toho můžete přejít k podrobnostem o datech a analyzovat, jak jednotlivé varianty příznaku funkce ovlivňují chování uživatelů.

Dodatečné zdroje