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
nullgesetzt. - 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),ErroroderOk. Der Standardwert gibt keinen Fehler an. - Startzeit: Die Startzeit des Vorgangs.
- Endzeit: Die Endzeit des Vorgangs.
- Status: Erfasst den Abschlussstatus des Vorgangs. Der Wert dieses Felds ist
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
- Informationen zu Kontext und Kontextweitergabe
- Informationen zur Stichprobenerhebung