Bekannte Probleme
In diesem Abschnitt werden bekannte Probleme aufgeführt:
- Spans, die mit der Telemetry API in Ihr Google Cloud -Projekt geschrieben werden, sind für die Cloud Trace API nicht zugänglich. Wenn Sie beispielsweise versuchen, diese Traces aufzulisten, schlägt der Befehl mit einem
404 Not Found-Fehler fehl.
Fehlerbehebung bei Log Analytics
In diesem Abschnitt wird beschrieben, wie Sie Fehler beheben, die bei der Verwendung von Log Analytics zum Abfragen Ihrer Tracedaten auftreten können.
Fehlermeldung, dass eine Ansicht nicht vorhanden ist
Sie geben eine SQL-Abfrage im Abfragebereich der Seite Loganalysen ein, aber der SQL-Parser gibt den folgenden Fehler aus:
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/views/OBS_VIEW_ID does not exist
Der vorherige Fehler wird gemeldet, wenn die in der FROM-Anweisung angegebene Ansicht nicht gefunden werden kann.
So beheben Sie diesen Fehler:
Prüfen Sie, ob der vollqualifizierte Name der Ansicht der Syntax entspricht, die für das Log Analytics-Benennungsschema erforderlich ist. Die erforderliche Syntax für eine Ansicht finden Sie, indem Sie die Standardabfrage der Ansicht aufrufen.
Wenn die Google Cloud Projekt-ID, der Standort, die Bucket-ID, die Dataset-ID oder die Ansichts-ID Punkte (
(.)) enthalten, muss das Feld in einzelne Graviszeichen ((`)) eingeschlossen werden.Wenn die ID Ihres Google Cloud -Projekts beispielsweise
example.com:bluebirdlautet, sieht dieFROM-Anweisung so aus:FROM `example.com:bluebird`.`us`.`_Trace`.`Spans`.`_AllSpans`
Keine Daten auf der Seite Trace Explorer
Sie haben eine Anwendung, die Trace-Daten an Ihr Google Cloud -Projekt sendet. Wenn Sie jedoch die Seite Trace Explorer öffnen, werden keine Daten angezeigt.
Es gibt mehrere mögliche Gründe, warum Sie keine Trace-Daten sehen können:
- Sie haben nicht die erforderlichen Berechtigungen zum Ansehen der Daten.
- Trace-Spans wurden nicht an Ihr Projekt gesendet.
- Ihre Anwendung hat nicht die erforderlichen Berechtigungen zum Schreiben von Tracedaten.
- Die Spannen Ihrer Traces werden nicht gespeichert.
In den folgenden Unterabschnitten finden Sie Informationen zur Fehlerbehebung für die aufgeführten Fehlerszenarien.
Prüfen, ob Sie berechtigt sind, Trace-Daten anzusehen
Wenn Sie Trace-Daten ansehen möchten, muss Ihnen die Rolle „Cloud Trace-Nutzer“ (roles/cloudtrace.user) zugewiesen sein.
Prüfen, ob Trace-Spans an Ihr Projekt gesendet werden
So prüfen Sie, ob Spans an Ihr Projekt gesendet werden:
-
Enable the Cloud Trace and Telemetry APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.Mit beiden APIs können Trace-Spans erfasst werden. Die Telemetry API wird jedoch empfohlen, da sie mit dem OpenTelemetry-Ökosystem kompatibel ist und großzügigere Limits als die Cloud Trace API hat.
Rufen Sie die Seite Aktivierte APIs und Dienste auf und suchen Sie nach den Zeilen für die Cloud Trace API und die Telemetry API.
Wenn die Anzahl der Anfragen für diese beiden APIs null ist, werden keine Trace-Daten an Ihr Projekt gesendet.
Prüfen Sie, ob Ihre Anwendung die erforderlichen Berechtigungen zum Schreiben von Trace-Spans hat.
So prüfen Sie, ob Ihre Anwendung die Berechtigung hat, Trace-Daten in Ihr Projekt zu schreiben:
Rufen Sie die Seite Aktivierte APIs und Dienste auf, suchen Sie nach den Zeilen für die Cloud Trace API und die Telemetry API und sehen Sie sich die Spalte Fehler an.
Wenn Sie in der Spalte Fehler für eine der beiden APIs einen Wert ungleich null sehen, treten beim Lesen oder Schreiben von Tracedaten über diese API Fehler auf. Wenn Sie den Fehlertyp ermitteln möchten, wählen Sie die API und dann den Tab Messwerte aus und sehen Sie sich Fehler nach API-Methode an:
Wenn Schreibvorgänge fehlschlagen, weisen Sie dem Dienstkonto, das Anmeldedaten bereitstellt, die folgenden Rollen zu:
- Cloud Trace API: Rolle „Cloud Trace-Agent“ (
roles/cloudtrace.agent). - Telemetry API: Cloud Telemetry Trace Writer (
roles/telemetry.tracesWriter).
- Cloud Trace API: Rolle „Cloud Trace-Agent“ (
Prüfen, ob Ihre Tracedaten gespeichert werden
Trace-Spans werden in einem Observability-Bucket namens _Trace gespeichert. Dieser Bucket wird automatisch bereitgestellt, wenn Ihr Google Cloud Projekt Trace-Spans empfängt.
Es gibt jedoch mehrere Szenarien, in denen die Bereitstellung fehlschlägt.
Um festzustellen, ob ein Bucket für die Beobachtbarkeit für Ihre Trace-Daten vorhanden ist, können Sie entweder [Ihre Buckets für die Beobachtbarkeit auflisten][trace-storage-list-buckets] oder die Seite Trace Explorer öffnen. Sie können beispielsweise Folgendes tun:
-
Rufen Sie in der Google Cloud Console die Seite
Trace Explorer auf:
Sie können diese Seite auch über die Suchleiste finden.
Wenn Sie ein Banner wie das folgende sehen, bedeutet das, dass kein Speicherplatz für Ihre Tracedaten bereitgestellt wird.
Trace storage is not initialized for this project. Enable trace storage to begin collecting trace data.Wenn Sie einen Observability-Bucket für Ihre Tracedaten bereitstellen möchten, klicken Sie im Banner auf Aktivieren.
Wenn Sie auf Aktivieren klicken, wird ein Bereich an Ihr Projekt gesendet. Wenn das System den Span empfängt, wird der Befehl zum Erstellen eines Beobachtbarkeits-Buckets mit dem Namen
_Traceausgegeben. Dieser Vorgang kann einige Minuten dauern.Wenn die Initialisierung erfolgreich ist, wird ein Benachrichtigungsbanner angezeigt und Cloud Trace nimmt alle Tracedaten auf, die in der letzten Stunde gesendet wurden. Diese Daten wurden in einem temporären Puffer gespeichert. Es kann einige Minuten dauern, bis Daten im Trace Explorer angezeigt werden. Wenn Sie keine Daten sehen, aktualisieren Sie das Fenster.
Wenn der Aktivierungsbefehl fehlschlägt, wird die folgende Meldung angezeigt:
Initializing trace storage has failed for an unexpected reason. Please file a support ticket for assistance.Wenn Sie den Fehler beheben möchten, Google Cloud wenden Sie sich an den Support Google Cloud , indem Sie auf Ticket einreichen klicken.
Suche nach einem bestimmten Trace schlägt fehl
Sie geben eine Trace-ID auf der Seite Trace Explorer ein. Der Trace wird nicht gefunden und eine Meldung wie die folgende wird angezeigt:
The select trace with ID abcde does not exist or is older than 30 days and has been deleted per our retention policy.
Versuchen Sie Folgendes, um diesen Fehler zu beheben:
Prüfen Sie, ob der Zeitstempel, der mit der Trace-ID verknüpft ist, innerhalb des Aufbewahrungszeitraums liegt.
Ermitteln Sie das Google Cloud -Projekt, in dem der Trace gespeichert ist, und prüfen Sie, ob dieses Projekt in der Ressourcenauswahl der Google Cloud -Console ausgewählt ist. Standardmäßig hat die Seite Trace Explorer nur Zugriff auf Tracedaten, die im ausgewählten Projekt gespeichert sind.
Fehlende ältere Daten auf der Seite Trace Explorer
Sie verwenden die Seite Trace Explorer und können aktuelle Daten sehen. Wenn Sie die Zeitbereichsauswahl jedoch auf 30 Tage oder einen größeren Wert festlegen, werden die älteren Daten nicht angezeigt.
Auf der Seite Trace Explorer werden keine Daten für Zeiträume angezeigt, die länger als der Aufbewahrungszeitraum von Cloud Trace (30 Tage) sind.
Wenn der Zeitraumselektor auf 30 Tage oder weniger eingestellt ist, bedeutet das, dass die Datenbank, die von den Abfragen auf der Seite Trace Explorer abgefragt wird, erst vor Kurzem erstellt wurde. Wenn Sie diesen Wert beispielsweise auf 20 Tage festlegen und nur die Daten der letzten 10 Tage sehen, wurde die Datenbank vor 10 Tagen erstellt. Außerdem enthält diese Datenbank nur Traces, die nach der Erstellung der Datenbank an Ihr Google Cloud -Projekt gesendet wurden.
Unvollständiger Trace wird angezeigt
Sie öffnen die Seite Trace Explorer und wählen einen Span aus, der angezeigt werden soll. Im Flyout Details wird der Trace angezeigt, aber er ist nicht vollständig. Einige Zeiträume werden nicht angezeigt.
Es kann folgende Gründe dafür geben, dass Zeiträume fehlen:
Auf der Seite Trace-Explorer wird nicht in allen Google Cloud Projekten gesucht, in denen Spandaten für den Trace gespeichert sind.
Ihre IAM-Rolle für ein Google Cloud Projekt, in dem Spannen-Daten für den Trace gespeichert sind, enthält nicht die Berechtigungen, die zum Aufrufen von Trace-Daten erforderlich sind.
Es gibt ein Problem mit der Instrumentierung. Beispielsweise wurden nur einige Spannen in einem Trace an Ihr Google Cloud -Projekt gesendet.
So beheben Sie diese Probleme:
Achten Sie auf der Seite Trace Explorer darauf, dass das Element Bereich auf einen Tracebereich festgelegt ist, in dem Projekte aufgeführt sind, in denen die Spans für den ausgewählten Trace gespeichert sind.
Wenn es keinen Trace-Bereich gibt, der die Projekte enthält, die Sie im vorherigen Schritt identifiziert haben, erstellen oder ändern Sie einen vorhandenen Trace-Bereich. Weitere Informationen finden Sie unter Trace-Bereiche erstellen und verwalten.
Prüfen Sie, ob Sie die Rolle „Cloud Trace-Nutzer“ (
roles/cloudtrace.user) für die Projekte haben, in denen die Spandaten gespeichert werden.
Sie haben nicht die erforderlichen Berechtigungen zum Ansehen von Tracedaten
Sie rufen die Seite Trace Explorer auf und sehen die folgende Benachrichtigung:
You don't have the required permissions to view trace data for one or more projects listed in the trace scope.
So beheben Sie das Problem:
- Maximieren Sie das Element Bereich und sehen Sie nach, welcher Trace-Bereich ausgewählt ist.
- Wählen Sie im Flyout Bereich eingrenzen die Option Bereiche verwalten aus.
- Suchen Sie den im ersten Schritt ermittelten Trace-Bereich und maximieren Sie dann die Details, um die Liste der Google Cloud Projekte aufzurufen.
- Prüfen Sie für jedes Google Cloud Projekt im Trace-Bereich, ob Sie die Rolle „Cloud Trace-Nutzer“ (
roles/cloudtrace.user) haben. Wenn Sie diese Rolle für ein Projekt nicht haben, bitten Sie einen Administrator oder Projektinhaber, Ihnen diese Rolle zuzuweisen.
Fehlende Meldung zur Spannen-ID im Trace
Ihr Trace enthält die Meldung „Missing span ID“ (Fehlende Span-ID).
In Systemen für verteiltes Tracing sind unvollständige Traces zu erwarten. Ein Trace ist unvollständig, wenn ein erfasster Span einen Verweis auf einen anderen Span enthält, der nicht empfangen wurde. Die nicht aufgelöste Referenz kann folgende Ursachen haben:
- Der referenzierte Zeitraum wurde nicht per Stichprobe erfasst.
- Der referenzierte Span wurde erfasst, aber noch nicht von Cloud Trace empfangen, oder der Span wurde empfangen, aber nicht gespeichert.
Wenn Sie einen unvollständigen Trace ansehen, wird in Cloud Trace im Bereich „Trace-Details“ die Meldung „Fehlende Span-ID“ angezeigt.
Wenn Sie immer wieder die Meldung „Fehlende Spannen-ID“ sehen, versuchen Sie Folgendes:
Prüfen Sie bei Komponenten, die Sie verwalten, ob sie das Flag
sampleddes Headers berücksichtigen und weitergeben, wenn dieses Feld vorhanden ist. Diese Einstellung ist ein Hinweis für untergeordnete Komponenten, die Anfrage zu analysieren. Weitere Informationen zu Trace-Headern finden Sie unter Protokolle für die Weitergabe von Kontext.Google Cloud -Dienste berücksichtigen diesen Hinweis in der Regel. Sie begrenzen jedoch auch die Rate, mit der sie Trace-Daten schreiben.
Wenn Sie Cloud Service Mesh verwenden, prüfen Sie, ob Sie die Anleitung zum Weitergeben des Trace-Kontexts für diese Konfigurationen befolgen. Informationen zu Cloud Service Mesh finden Sie unter Weitergabe von Trace-Kontext.
Log- und Tracedaten können nicht korreliert werden
Sie führen eine der folgenden Aktionen aus:
Sie sehen einen Trace-Span und möchten die zugehörigen Logeinträge ansehen. Es werden jedoch entweder keine Logdaten aufgeführt oder, wenn Sie die Seite Logs-Explorer öffnen, werden keine Logeinträge angezeigt.
Sie sehen einen Logeintrag und möchten die zugehörigen Trace-Spans aufrufen. Wenn Sie jedoch die Optionen im Logeintrag verwenden, um die Seite Trace-Explorer zu öffnen, werden keine Tracedaten angezeigt.
Konfigurieren Sie den Observability-Bereich, um diese Fehler zu beheben. Mit diesem Bereich wird angegeben, welche Ihrer Trace- und Logbereiche verwendet werden sollen, wenn die entsprechenden Explorer-Seiten geöffnet werden. Weitere Informationen finden Sie unter Beobachtbarkeitsbereiche für projektübergreifende Abfragen konfigurieren.
Keine Trace-Daten nach der Aktualisierung der Go-App zur Verwendung von OpenTelemetry
Ihre Anwendung ist auf die Clientbibliothek angewiesen, um Traces zu erfassen. Nachdem Sie Ihre Anwendung für die Verwendung von OpenTelemetry aktualisiert haben, werden keine Cloud Trace-Daten mehr angezeigt.
Da einige Cloud-Clientbibliotheken für Go in OpenCensus integriert sind, müssen Sie eine OpenCensus-Bridge verwenden. Weitere Informationen zum Problem, das durch die Bridge gelöst wird, finden Sie unter OpenCensus Bridge.
Informationen zum Update der Cloud-Clientbibliotheken für Go finden Sie unter Problem 4237.