Übersicht über die Trace-Erfassung

Auf dieser Seite finden Sie eine Übersicht über die Trace-Erfassung mit OpenTelemetry. Wenn Sie Spanner-Anfragen beobachten und Fehler beheben möchten, können Sie Traces in den Spanner-Clientbibliotheken aktivieren. Clientseitiges und End-to-End-Tracing kann Ihnen helfen, die Leistung zu beobachten und Fehler zu beheben.

Traces enthalten relevante Informationen für jede Anfrage von einem Client, z. B.:

  • Spans mit Zeitstempeln, wann der Client eine RPC-Anfrage gesendet und wann er die RPC-Antwort erhalten hat, einschließlich der Latenz, die durch das Netzwerk und das Clientsystem verursacht wurde.

  • Attribute (Schlüssel/Wert-Paare) mit Informationen zum Client und seiner Konfiguration.

  • Annotationen mit wichtigen Ereignissen in den Spans.

Weitere Informationen zu Spans und Attributen finden Sie in der OpenTelemetry-Dokumentation unter Spans und Attribute.

End-to-End-Tracing

Zusätzlich zum clientseitigen Tracing können Sie auch End-to-End-Tracing aktivieren. End-to-End-Tracing hilft Ihnen, Latenzprobleme zu verstehen und zu beheben, die speziell für Spanner gelten, z. B.:

  • Feststellen, ob die Latenz auf die Netzwerklatenz zwischen Ihrer Anwendung und Spanner zurückzuführen ist oder ob sie innerhalb von Spanner auftritt.

  • Ermitteln, über welche Regionen die Anfragen Ihrer Anwendung weitergeleitet werden und ob es eine regionsübergreifende Anfrage gibt. Google Cloud Eine regionsübergreifende Anfrage führt in der Regel zu höheren Latenzen zwischen Ihrer Anwendung und Spanner.

Um Cloud Trace nicht zu überlasten und Kosten effektiv zu verwalten, ist die Anzahl der Trace-Spans, die Sie exportieren können, beim End-to-End-Tracing begrenzt. Diese Beschränkung hat keine Auswirkungen auf die Verwendung von End-to-End-Tracing zur Fehlerbehebung.

OpenTelemetry

Spanner-Clientbibliotheken unterstützen die Trace-Erfassung mit OpenTelemetry-APIs. OpenTelemetry ist ein Open-Source-Framework für die Beobachtbarkeit. OpenTelemetry bietet eine Vielzahl von Konfigurationen, z. B. Exporter für bestimmte Back-Ends, Stichprobenraten und Span-Limits.

Traces mit OTLP exportieren

Im Rahmen Ihrer OpenTelemetry-Konfiguration verwenden Sie einen Exporter, um Trace-Daten an ein Beobachtbarkeits-Back-End zu senden. Wir empfehlen die Verwendung eines OpenTelemetry Protocol (OTLP)-Exporters , der Daten mit dem OpenTelemetry-Protokoll sendet. Sie können den OTLP Exporter so konfigurieren, dass Traces direkt an Beobachtbarkeits-Back-Ends gesendet werden, die OTLP unterstützen, z. B. Cloud Trace mit Telemetry API, oder an einen OpenTelemetry Collector.

Beschränkungen

Für Spanner-Traces gelten die folgenden Beschränkungen:

  • Trace-Spans sind nur für die Java-, Go-, Node- und Python-Clientbibliotheken verfügbar.
  • End-to-End-Traces können nur nach Cloud Trace exportiert werden.

Preise

Zusätzlich zur Spanner-Nutzung können für das Tracing Gebühren über Ihr Beobachtbarkeits-Back-End anfallen.

Die Aufnahme von Trace-Spans in Ihr Beobachtbarkeits-Back-End ist kostenpflichtig. Wenn Sie beispielsweise Cloud Trace als Back-End verwenden, werden Ihnen die Kosten gemäß den Cloud Trace Preisenin Rechnung gestellt.

Um die Abrechnung besser zu verstehen, beginnen Sie mit einer kleinen Trace-Stichprobenrate basierend auf Ihrem Traffic.

Nächste Schritte

Informationen zum Einrichten von clientseitigem und End-to-End-Tracing finden Sie unter Trace-Erfassung mit OpenTelemetry einrichten.