C# Academy · Lektion

Exportera till backends

Skicka telemetri till OTLP-insamlare och verktyg.

Lektion 4 av 413 steg

Exportera till backends är en gratis lektion i C# Academy på CoddyKit. Detta är lektion 4 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för C# Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i C# Academy innehåller totalt 4 lektioner.

Skicka ut telemetri

Att generera traces och mätvärden är bara halva arbetet; du måste exportera dem till ett backend-system som lagrar, söker i och visualiserar data. OpenTelemetry använder exporters för detta.

Exporters

En exporter skickar telemetri till en destination. Olika exporters riktar sig mot olika system: konsolen (för utveckling), OTLP (standardprotokollet) och leverantörsspecifika exporters.

Console-exportern

Console-exportern skriver ut telemetri i terminalen och passar perfekt för att verifiera instrumenteringen under utvecklingen.

builder.Services.AddOpenTelemetry()
    .WithTracing(t => t.AddConsoleExporter())
    .WithMetrics(m => m.AddConsoleExporter());

Vad är OTLP?

OTLP (OpenTelemetry Protocol) är det leverantörsoberoende överföringsformatet för telemetri. När du exporterar via OTLP kan du skicka data till alla OTLP-kompatibla backend-system utan att ändra appens kod.

dotnet add package OpenTelemetry.Exporter.OpenTelemetryProtocol

Konfigurera OTLP-exportern

Lägg till AddOtlpExporter och ange adressen till din collector- eller backend-endpoint.

builder.Services.AddOpenTelemetry()
    .WithTracing(t => t.AddOtlpExporter(o =>
    {
        o.Endpoint = new Uri("http://localhost:4317");
    }))
    .WithMetrics(m => m.AddOtlpExporter());

OpenTelemetry Collector

Collector är en separat process som tar emot telemetri, bearbetar den (batchning, filtrering och berikning) och vidarebefordrar den till ett eller flera backend-system. Den frikopplar appen från specifika leverantörer.

Varför använda en Collector?

Om du skickar data direkt till en leverantör kopplas appen till den leverantören. Med en Collector kan du byta backend eller skicka data till flera samtidigt, tillämpa sampling och maskning centralt samt minska belastningen på dina tjänster.

Vanliga backend-system

Traces skickas ofta till Jaeger eller Tempo, mätvärden till Prometheus och dashboards till Grafana. Loggar kan skickas till Loki eller en ELK-stack. Alla kan ta emot OTLP via Collectorn.

Koppla ihop allt

En typisk konfiguration anger resurs, källor, meters och en OTLP-exporter i samma block, så att traces och mätvärden flödar till din Collector.

builder.Services.AddOpenTelemetry()
    .ConfigureResource(r => r.AddService("checkout-api"))
    .WithTracing(t => t
        .AddAspNetCoreInstrumentation()
        .AddSource("Checkout.Orders")
        .AddOtlpExporter())
    .WithMetrics(m => m
        .AddAspNetCoreInstrumentation()
        .AddMeter("Checkout.Orders")
        .AddOtlpExporter());

Exportera loggar

OTel exporterar även loggar. Koppla in det i loggningspipen så att loggposter innehåller samma trace-kontext och når ditt backend-system via OTLP.

builder.Logging.AddOpenTelemetry(o =>
{
    o.AddOtlpExporter();
});

Batchning och tillförlitlighet

Exporters buntar telemetri för att minska overhead och försöker igen vid fel. Anpassa batchstorlek och timeouts efter din volym och låt helst Collectorn absorbera toppar, så att appens trådar aldrig blockeras av exporteringen.

Snabbkontroll

Testa exportering till backend-system.

Sammanfattning

Exporters skickar telemetri till backend-system. Console-exportern underlättar utvecklingen; OTLP är det leverantörsoberoende protokollet som används med AddOtlpExporter. Genom att skicka OTLP till en OpenTelemetry Collector frikopplar du appen, centraliserar batchning, sampling och routning och skickar data vidare till backend-system som Jaeger, Prometheus och Grafana. Loggar exporteras på samma sätt och innehåller trace-kontext.

Gratis att börja

Lär dig C# med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
93
Lektioner
346

Vanliga frågor

Är lektionen ”Exportera till backends” gratis?

Ja – hela texten till ”Exportera till backends” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i C# Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i C# Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Exportera till backends”?

Skicka telemetri till OTLP-insamlare och verktyg. Ni övar på C# Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig C# Academy?

Du behöver inga förkunskaper. Utbildningen i C# Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.

Hur lång tid tar lektionen ”Exportera till backends”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här C# Academy-lektionen?

Ja. Varje C# Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Observabilitys tre pelare
  2. Distribuerad tracing
  3. Samla in mätvärden
  4. Exportera till backends
← Tillbaka till C# Academy