Cloud Trace – Übersicht

Cloud Trace ist ein System für verteiltes Tracing, Google Cloud mit dem die Latenz von Anfragen verfolgt und Leistungsengpässe in Diensten und generativen KI-Anwendungen behoben werden können. Durch das Erfassen von Latenzdaten aus Google Cloud Diensten und instrumentierten Anwendungen hilft Trace Ihnen, zu verstehen, wie Anfragen in einer Mikrodienstarchitektur verarbeitet werden und relevante Logs zu identifizieren.

Mit Trace können Sie Fragen wie die folgenden beantworten:

  • Wie lange braucht Ihre Anwendung zum Verarbeiten einer bestimmten Anfrage?
  • Warum dauert es so lange, bis eine Anfrage abgeschlossen ist?
  • Warum dauert die Verarbeitung einiger Anfragen länger als die anderer?
  • Wie hoch ist die Gesamtlatenz für Anfragen an Ihre Anwendung?
  • Hat sich die Latenz der Anwendung im Laufe der Zeit erhöht oder verringert?
  • Wie können Sie die Latenz der Anwendung reduzieren?
  • Welche Abhängigkeiten hat Ihre Anwendung?

Informationen zur gemeinsamen Verwendung von Traces und Logs für die Ursachenanalyse finden Sie im Blogpost Fehlerbehebung bei verteilten Anwendungen: Traces und Logs gemeinsam zur Ursachenanalyse verwenden.

Informationen zur Profilerstellung für Ihre Anwendung, siehe Cloud Profiler.

Umgebungsunterstützung

Trace wird unter Linux in den folgenden Umgebungen ausgeführt:

Komponenten

Trace besteht aus einem Tracing-Client, der Traces erfasst und an Ihr Google Cloud Projekt sendet. Anschließend können Sie die vom Tracing-Client erfassten Daten in der Google Cloud Console ansehen und analysieren. Informationen zum Datenmodell finden Sie unter Traces und Spans.

Tracing-Client

Ein Tracing-Client erfasst Latenz- und Spandaten aus Ihrer Anwendung und exportiert sie in Ihr Google Cloud Projekt. Je nach Umgebung und Anforderungen können Sie Tracedaten automatisch oder manuell erfassen, indem Sie Ihren Anwendungscode instrumentieren.

Tracingschnittstelle

Auf den Seiten Trace Explorer und Observability Analytics in der Google Cloud Console können Sie Ihre Spandaten ansehen und analysieren:

  • Trace Explorer: Hier werden aggregierte Informationen zu Ihren Tracedaten angezeigt und Sie können einzelne Traces im Detail untersuchen. Die aggregierten Latenzdaten werden auf einer Heatmap angezeigt, die Sie mit dem Mauszeiger erkunden können. Um die angezeigten Daten einzuschränken, können Sie Filter hinzufügen. Sie können sich auch einzelne Spans und Traces ansehen und sie untersuchen:

  • Observability Analytics: Bietet eine SQL-Abfrageschnittstelle. In Ihren Abfragen können Sie Ihre Trace- und Logdaten verknüpfen und die Abfrageergebnisse entweder als Tabelle oder als Diagramm ansehen. Sie können Ihre Trace daten mit BigQuery analysieren, wenn Sie ein verknüpftes BigQuery-Dataset erstellen. Weitere Informationen finden Sie unter Traces abfragen und analysieren.

Konfigurationen mit automatischem Tracing

Bei den folgenden Konfigurationen werden Tracedaten automatisch erfasst:

  • App Engine-Standardumgebung

  • Cloud Run-Funktionen und Cloud Run

    Für eingehende und ausgehende HTTP-Anfragen werden Latenzdaten automatisch an Trace gesendet.

Anwendung instrumentieren

Instrumentieren Sie Ihre Anwendung, um bestimmte Informationen zu erfassen, mit denen Sie die Leistung besser nachvollziehen und Fehler beheben können. Mit verschiedenen als Open Source veröffentlichten Instrumentierungs-Frameworks können Sie Log-, Messwert- und Trace Daten erfassen und diese Daten an einen beliebigen Anbieter senden, einschließlich Google Cloud. Bei agentenbasierten Anwendungen können einige Frameworks Ihre Prompts und Antworten erfassen oder Kontext übergeben, der das Tracing einiger Remote Aufrufe von Google Cloud MCP-Servern ermöglicht.

Wir empfehlen, für die Instrumentierung Ihrer Anwendung ein anbieterneutrales als Open Source veröffentlichtes Instrumentierungs-Framework wie OpenTelemetryanstelle von anbieter- und produktspezifischen APIs oder Clientbibliotheken zu verwenden. Informationen zu diesen Frameworks finden Sie unter Instrumentierung und Beobachtbarkeit und Instrumentierungsansatz auswählen.

In den von uns bereitgestellten Instrumentierungsbeispielen wird OpenTelemetry verwendet:

Sie können zwar Cloud Trace-Clientbibliotheken verwenden, um Ihre Anwendung zu instrumentieren, wir empfehlen jedoch OpenTelemetry. OpenTelemetry-Bibliotheken sind Trace-Clientbibliotheken vorzuziehen, da sie einfacher sind und Tracedaten im OTLP-Format exportieren, das von OpenTelemetry definiert wird. Weitere Informationen finden Sie unter Für Trace instrumentieren und Clientbibliotheken für Cloud Trace.

Cloud Trace und agentenbasierte Anwendungen

Wenn Sie das Verhalten Ihrer agentenbasierten Anwendungen nachvollziehen möchten, konfigurieren Sie sie so, dass sie Prompts und Antworten erfassen oder Spans generieren, wenn sie Remote-Aufrufe an Google Cloud MCP-Serversenden. Mit Prompts und Antworten können Sie nachvollziehen, wie Ihre agentenbasierte Anwendung Entscheidungen trifft. Spans, in denen Toolaufrufe aufgezeichnet werden, helfen Ihnen, den Toolaufruf, die Aufrufstatus und die Latenz von Anfragen zu bestätigen.

In mehreren Instrumentierungsbeispielen wird gezeigt, wie Sie eine Anwendung so konfigurieren, dass Prompts und Antworten erfasst werden. Diese Beispiele basieren auf OpenTelemetry. Weitere Informationen finden Sie unter Generative KI-Anwendungen instrumentieren.

Google Cloud MCP-Server können Trace-Spans generieren. Weitere Informationen finden Sie unter MCP-Aufrufe mit Trace untersuchen.

APIs, die Tracedaten aufnehmen

Sie können Tracedaten mit der Telemetry API oder der Cloud Trace API an Ihr Projekt senden. Wir empfehlen die Telemetry API aus folgenden Gründen:

  • Die API ist mit dem Open-Source-Ökosystem OpenTelemetry kompatibel und ihre Limits sind oft großzügiger als die Limits von der Cloud Trace API, die eine proprietäre Google Cloud API ist.

  • Ihre Tracedaten werden in einem Format gespeichert, das im Allgemeinen mit den von OTLP definierten Protobuf-Dateien übereinstimmt. Einige Felder werden möglicherweise vor der Speicherung von einem OpenTelemetry-spezifischen Datentyp in einen JSON-Datentyp konvertiert. Informationen zum Speicherformat finden Sie unter Schema für Tracedaten.

  • Beim collectorbasierten Export von Tracedaten ist Ihre Instrumentierung nicht von einem Google Cloud-bestimmten Exporter abhängig.

  • Einige Funktionen wie Application Monitoring sind auf Informationen angewiesen, die nur verfügbar sind, wenn Sie Tracedaten an die Telemetry API senden.

Wenn Sie verhindern möchten, dass Tracedaten in Ihrem Google Cloud Projekt gespeichert werden, deaktivieren Sie die Cloud Trace API. Das Deaktivieren der Cloud Trace API hat folgende Auswirkungen:

  • Google Cloud Dienste senden keine Tracedaten an Ihr Projekt.
  • Google Cloud Antworten auf Anfragen, die an einen Cloud Trace API-Endpunkt gesendet werden, enthalten einen Fehlercode.
  • Google Cloud Observability verwirft Tracedaten, die an den tracespezifischen Telemetry API-Endpunkt gesendet werden. Deaktivieren Sie die Telemetry API nicht, da diese API Log-, Messwert- und Tracedaten empfangen kann.

Wenn Sie eine Organisation verwalten und die Verwendung von Cloud Trace verhindern möchten, dann erstellen Sie eine Einschränkung für die Organisationsrichtlinie.

Unterstützung durch VPC Service Controls

Trace ist ein von VPC Service Controls unterstützter Dienst. Der Dienstname von Trace ist cloudtrace.googleapis.com. Alle VPC Service Controls-Einschränkungen, die Sie für den Trace-Dienst erstellen, gelten nur für diesen Dienst. Diese Einschränkungen gelten nicht für andere Dienste, einschließlich Dienste wie den telemetry.googleapis.com Dienst, der auch Tracedaten aufnehmen kann.

Hier finden Sie weitere Informationen:

Cloud Trace und Datenstandort

Wenn Sie Assured Workloads verwenden, weil Sie Anforderungen an den Datenstandort oder Impact Level 4 (IL4) haben, senden Sie keine Trace-Spans mit der Cloud Trace API.

Wenn Sie verhindern möchten, dass Tracedaten in Ihrem Google Cloud Projekt gespeichert werden, deaktivieren Sie die Cloud Trace API. Deaktivieren Sie die Telemetry API nicht, da diese API Log-, Messwert- und Tracedaten empfangen kann.

Trace-Aufbewahrung

Kategorie Aufbewahrungsdauer
Im Bucket _Trace gespeicherte Spans 30 Tage

IAM-Rollen

Cloud Trace verwendet Identity and Access Management (IAM), um den Zugriff auf Ressourcen zu steuern. Eine Liste der Cloud Trace API- und Telemetry API-Rollen finden Sie unter Zugriff mit IAM steuern.

Da die Telemetry API eine Consumer-API ist, müssen Sie beim Senden von Daten an die Telemetry API ein Kontingentprojekt angeben und dem Dienstkonto der Anwendung die Berechtigung zur Verwendung dieses Kontingents gewähren. Weitere Informationen finden Sie unter Telemetry API: Authentifizierung.

Preise

Informationen zu den Preisen für Cloud Trace finden Sie auf der Seite Google Cloud Observability-Preise.

Nächste Schritte