C# Academy · Lektion

Die drei Säulen der Observability

Verstehen Sie Traces, Metriken und Logs.

Lektion 1 von 413 Schritte

Die drei Säulen der Observability ist eine kostenlose C# Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C# Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C# Academy-Kurs umfasst insgesamt 4 Lektionen.

Was ist Observability?

Observability bezeichnet die Möglichkeit, den internen Zustand eines Systems anhand der von ihm ausgegebenen Daten zu verstehen. Für einen laufenden Service beantwortet sie die Fragen: Ist der Service gesund, warum ist er langsam und was ist fehlgeschlagen? Sie beruht auf drei Säulen: Traces, Metriken und Logs.

Was ist OpenTelemetry?

OpenTelemetry (OTel) ist ein herstellerneutrales Standard- und Bibliotheksset zum Erzeugen und Exportieren von Telemetriedaten. Mit einer einzigen Instrumentierung können Sie Daten an viele Backends wie Jaeger, Prometheus oder Grafana senden.

dotnet add package OpenTelemetry.Extensions.Hosting

Erste Säule: Logs

Logs sind mit Zeitstempeln versehene Aufzeichnungen einzelner Ereignisse („Benutzer 42 hat sich angemeldet“, „Zahlung fehlgeschlagen“). Sie liefern detaillierten, für Menschen lesbaren Kontext, können aber verrauscht sein und sich allein nur schwer aggregieren lassen.

logger.LogInformation("Order {OrderId} placed by {UserId}", orderId, userId);

Zweite Säule: Metriken

Metriken sind numerische Messwerte, die über einen Zeitraum aggregiert werden, zum Beispiel Anfrageanzahl, Fehlerrate, Latenz-Perzentile oder CPU-Auslastung. Sie sind kostengünstig zu speichern und eignen sich ideal für Dashboards und Alerts.

Dritte Säule: Traces

Traces verfolgen eine einzelne Anfrage durch Ihre Services und unterteilen sie in zeitlich erfasste Spans. Sie zeigen, wo Zeit verbraucht wird und welche Abhängigkeit eine Verlangsamung verursacht hat.

Wie die Säulen einander ergänzen

Metriken zeigen Ihnen, dass etwas nicht stimmt, etwa weil die Fehlerrate angestiegen ist. Traces zeigen Ihnen, wo das Problem liegt, zum Beispiel im Zahlungsservice. Logs zeigen Ihnen, warum es aufgetreten ist, etwa durch eine Nullreferenz bei einer bestimmten Bestellung. Zusammen ergeben sie eine vollständige Geschichte zur Fehleranalyse.

Korrelation ist der Schlüssel

Die eigentliche Stärke entsteht durch Korrelation. Eine gemeinsame Trace-ID, die Logs und Spans hinzugefügt wird, ermöglicht Ihnen den Sprung von einem Metrik-Alarm zum genauen Trace und den zugehörigen Logs einer fehlgeschlagenen Anfrage.

Signale in OpenTelemetry

OTel bezeichnet diese Säulen als Signale. In .NET werden sie auf vertraute Grundbausteine abgebildet: Traces verwenden Activity/ActivitySource, Metriken verwenden Meter und Logs verwenden ILogger.

OpenTelemetry zu einem Host hinzufügen

Mit AddOpenTelemetry() aktivieren Sie die gewünschten Signale und konfigurieren Tracing und Metriken. Die folgenden Lektionen behandeln die einzelnen Bereiche ausführlich.

builder.Services.AddOpenTelemetry()
    .WithTracing(tracing => { })
    .WithMetrics(metrics => { });

Ressourcenattribute

Eine Ressource beschreibt die Entität, die Telemetrie erzeugt (Dienstname, Version, Umgebung). Wenn Sie sie konsistent festlegen, können Backends Ihre Daten korrekt gruppieren und filtern.

builder.Services.AddOpenTelemetry()
    .ConfigureResource(r => r.AddService(
        serviceName: "checkout-api",
        serviceVersion: "1.4.0"));

Automatische vs. manuelle Instrumentierung

OTel bietet automatische Instrumentierung für ASP.NET Core, HttpClient und weitere Komponenten sowie manuelle Instrumentierung, bei der Sie eigene Spans und Metriken für geschäftsspezifische Einblicke hinzufügen.

Kurzer Test

Testen Sie die drei Säulen.

Zusammenfassung

Observability beruht auf drei Säulen: Logs (Ereignisse, das Warum), Metriken (aggregierte Zahlen, das Was) und Traces (Spans pro Anfrage, das Wo). OpenTelemetry ist der herstellerneutrale Standard, der alle drei als Signale ausgibt und sie in .NET auf Activity, Meter und ILogger abbildet. Die Korrelation über Trace-IDs und eine korrekt konfigurierte Ressource verbindet sie miteinander.

Kostenlos starten

Lerne C# mit einem KI-Tutor — kostenlos

Schreibe und führe echten Code in deinem Browser aus, bekomme sofortige Hilfe von einem 24/7 KI-Tutor und setze dein Lernen im Web oder in der App fort.

Kurse
93
Lektionen
346

Häufig gestellte Fragen

Ist die Lektion „Die drei Säulen der Observability“ kostenlos?

Ja — der vollständige Text von „Die drei Säulen der Observability“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C# Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C# Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Die drei Säulen der Observability“?

Verstehen Sie Traces, Metriken und Logs. Du übst C# Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um C# Academy zu starten?

Keine Vorkenntnisse erforderlich. C# Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.

Wie lange dauert die Lektion „Die drei Säulen der Observability“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser C# Academy-Lektion Code schreiben und ausführen?

Ja. Jede C# Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Die drei Säulen der Observability
  2. Distributed Tracing
  3. Metriken erfassen
  4. An Backends exportieren
← Zurück zu C# Academy