Traces und Spans

In Cloud Trace bilden Traces und Spans das Datenmodell, mit dem der Pfad und die Latenz von Anfragen durch Ihre verteilten Anwendungen verfolgt werden. Ein Trace erfasst, wie eine Anfrage End-to-End über Ihre Dienste hinweg ausgeführt wird. Ein Trace besteht aus Spans, in denen die einzelnen Vorgänge, Funktionsaufrufe und RPCs aufgezeichnet werden, die während dieser Anfrage auftreten.

Trace-Datenmodell

Ein Trace besteht aus Folgendem:

  • Trace-ID: Die eindeutige Kennung des End-to-End-Vorgangs. Die Trace-ID wird im Anfragekontext über Dienstgrenzen hinweg weitergegeben.

  • Span-Sammlung: Eine Reihe von Spans mit derselben Trace-ID. Diese Spans bilden einen Baum oder einen gerichteten azyklischen Graphen, der die Aufrufhierarchie einer Anfrage darstellt.

Cloud Trace verwendet die Trace-ID, um zu ermitteln, welche Spans im Repository mit demselben Trace verknüpft sind.

Span-Datenmodell

Ein Span stellt einen einzelnen Vorgang dar, der in einem bestimmten Zeitraum aufgetreten ist. Jeder Span enthält Felder mit Informationen zum Span und zum Status des Vorgangs:

  • Kennungen enthalten die folgenden Felder:

    • Trace-ID: Die eindeutige Kennung der gesamten Anfrage oder des Trace, zu dem der Span gehört.
    • Span-ID: Die eindeutige Kennung für den Span. Wenn ein Vorgang mehrmals innerhalb eines einzelnen Trace aufgerufen wird, generiert jeder Aufruf einen separaten Span mit demselben Namen, aber einer eindeutigen Span-ID.
    • Übergeordnete Span-ID: Gibt den übergeordneten Vorgang an, der diesen Span aufgerufen hat. Für den „Stamm“-Span ist die übergeordnete Span-ID auf null gesetzt.
    • Name: Der Name des ausgeführten Vorgangs.
    • Art: Die Span-Art liefert Tracing-Tools wie dem Trace Explorer Informationen darüber, wie Spans miteinander verknüpft sind. Weitere Informationen finden Sie unter OpenTelemetry SpanKind.
  • Ausführungsinformationen werden in den folgenden Feldern bereitgestellt:

    • Status: Erfasst den Abschlussstatus des Vorgangs. Der Wert dieses Felds ist Unset (Standard), Error oder Ok. Der Standardwert gibt keinen Fehler an.
    • Startzeit: Die Startzeit des Vorgangs.
    • Endzeit: Die Endzeit des Vorgangs.

Spans können andere Felder wie Ereignisse, Attribute und Links enthalten:

  • Ereignisse erfassen strukturierte Nachrichten mit Zeitstempel innerhalb eines Spans.
  • Attribute speichern zusätzliche Informationen zu einem Vorgang mithilfe von Schlüssel/Wert-Paaren. Beim Schreiben von Attributen empfehlen wir, nach Möglichkeit die semantischen Konventionen von OpenTelemetry zu befolgen.
  • Mit Links können Sie einen Span mit einem anderen verknüpfen.

Weitere Informationen finden Sie unter OpenTelemetry: Spans.

Ressourcen

OpenTelemetry-Ressourcen:

Nächste Schritte