Auf dieser Seite werden die gängigen Strategien zur Fehlerbehebung für Cloud Run-Fehler beschrieben. Personalized Service Health veröffentlicht alle Cloud Run-Vorfälle, die auf der zugrunde liegenden Cloud de Confiance by S3NS Infrastruktur beruhen, um Cloud de Confiance by S3NS Dienstunterbrechungen zu erkennen, die sich auf Ihre Projekte auswirken. Sie sollten auch Benachrichtigungen für Personalized Service Health-Ereignisse einrichten. Informationen zu Vorfällen, die alle Cloud de Confiance by S3NS Dienste betreffen, finden Sie im Cloud de Confiance by S3NS Service Health-Dashboard.
In den folgenden Abschnitten der Anleitung zur Fehlerbehebung in Cloud Run finden Sie Informationen zur Behebung von Problemen mit Ihrer Cloud Run-Ressource:
Strategien zur Fehlerbehebung bei Cloud Run
In den folgenden Abschnitten wird erläutert, wie Sie allgemeine Strategien zur Fehlerbehebung anwenden können, um den Fehler zu beheben. Wenn nach dem Ausführen der Schritte in der Anleitung zur Fehlerbehebung weiterhin Fehler auftreten, lesen Sie den Abschnitt Nächste Schritte.
Gute Logs mit Cloud Logging ausgeben
Die Fehlerbehebung für Ihre Cloud Run-Ressource ist einfacher, wenn Sie gute Logs für das Debugging haben. Sie sollten Logs so schreiben, dass Ihre Containerlogs mit einem Anfragelog korreliert werden.
Mithilfe von korrelierten Logs können Sie die Anfrage identifizieren, die einer weiteren Analyse bedarf, den Anfragetrace finden und die Ursache des Problems analysieren. Weitere Informationen zum Schreiben von Logs finden Sie unter Containerlogs schreiben.
Instanzen mit dem Log-Explorer untersuchen
Jedes Request-Protokoll in Cloud Run enthält ein instanceId-Feld, das eine Instanz identifiziert, die Ihre Anfrage verarbeitet. Je nach Nebenläufigkeitswert, den Sie angeben, kann eine einzelne Instanz mehrere Anfragen gleichzeitig verarbeiten.
Wenn mehrere Instanzen gleichzeitig Logs ausgeben, sollten Sie Ihre Instanzen filtern, um die sequenziellen Anfragen zu identifizieren, die zu einem Instanzabsturz führen.
Wenn Sie eine Instanz filtern, können Sie bestimmte Leistungsprobleme im Zusammenhang mit Kaltstarts oder erhöhten Latenzen beheben. Diese Probleme können auch mit Variablen zusammenhängen, die in einem globalen Bereich deklariert werden, wenn der Wert in nachfolgenden gleichzeitigen Anfragen wiederverwendet wird. Ein Beispiel hierfür ist, wenn Sie ein einzelnes globales Objekt für den Verbindungspool für die Instanz erstellen und es dann in mehreren Anfragen verwenden.
So filtern Sie eine bestimmte Instanz im Logs Explorer:
Rufen Sie in der Cloud de Confiance Console die Seite „Log-Explorer“ auf:
Wählen Sie oben auf der Seite ein vorhandenes Cloud de Confiance by S3NS Projekt aus oder erstellen Sie ein neues Projekt.
Wählen Sie die Ressource Cloud Run-Überarbeitung für einen Dienst oder Cloud Run-Job für einen Job aus.
Maximieren Sie einen Logeintrag, um nach einer bestimmten Instanz zu filtern.
Klicken Sie auf den Wert der Instanz-ID und wählen Sie Übereinstimmende Einträge anzeigen aus.
Während Sie Instanzen untersuchen, können Sie Gemini Cloud Assist-Prüfungen verwenden, um zusätzliche Informationen zu Ihren Logs zu erhalten. Weitere Informationen zu den verschiedenen Möglichkeiten, eine Untersuchung mit dem Log-Explorer zu starten, finden Sie in der Gemini-Dokumentation unter Probleme mit Gemini Cloud Assist-Prüfungen beheben.
Unerwartete Latenzen bei Anfragen beheben
Wenn Probleme mit der Latenz auftreten, gehen Sie so vor:
Prüfen Sie, ob die Latenz alle Anfragen an Ihre Cloud Run-Ressource oder nur einen kleinen Prozentsatz betrifft. Cloud Run ist automatisch in Cloud Monitoring eingebunden. Es ist kein Einrichten oder Konfigurieren erforderlich.
So rufen Sie Messwerte für die Latenz einzelner Anfragen auf:
Rufen Sie in der Cloud de Confiance Console die Seite „Cloud Run“ auf:
Wählen Sie einen Dienst oder einen Job aus den Listen in der linken Navigationsleiste aus.
Klicken Sie auf den Tab MESSWERTE, um das Dashboard Anfragelatenzen aufzurufen.
Wenn Sie Latenzmesswerte in Cloud Monitoring ansehen möchten, wählen Sie in der Liste Messwerte die Option Cloud Run-Überarbeitung > Request_latencies > Anfragelatenz aus.
Eine Liste aller verfügbaren Cloud Run-Messwerte und ausführlichere Informationen finden Sie unter Cloud de Confiance by S3NS -Messwerte in Cloud Monitoring.
Identifizieren Sie die Anfrage mit hoher Latenz, um die Ursache der Latenz zu ermitteln. Mit Cloud Trace oder Cloud Logging können Sie nachvollziehen, wie lange eine bestimmte Anfrage gedauert hat.
Wenn Sie Anfragen mit hoher Latenz mithilfe von Cloud Logging identifizieren möchten, wenden Sie den Filter
traceSampled=truean, um Logs in Cloud Logging mit Traces in Cloud Trace zu korrelieren. Weitere Informationen finden Sie unter In Cloud Logging einbinden.Manchmal können Abhängigkeiten wie Anfragen an andere Dienste zu Latenzproblemen führen. Um solche Anfragen zu identifizieren, sollten Sie ein explizites Logging für die Anfragen einrichten. Wenn Sie solche Logs nicht ausgeben, kann es so aussehen, als ob ein Cloud Run-Dienst ein Latenzproblem verursacht.
Außerdem sollten Sie Latenzspitzen im Kontext des ausgewählten Zeitraums bewerten. Die Bedeutung eines Peaks ist relativ. Ein großer Peak in einem kleinen Fenster ist in einem größeren Fenster möglicherweise vernachlässigbar und umgekehrt. Daher hat das Zeitfenster erhebliche Auswirkungen auf die Interpretation von Latenzdaten.
Erhöhen Sie die Anzahl der Mindestinstanzen, um die Latenz für eingehende Anfragen zu reduzieren und Kaltstarts zu vermeiden. Sie sollten auch in Erwägung ziehen, Ihren Quellcode zu ändern und die Skalierungseinstellungen anzupassen, um die Anzahl der Verbindungen zu einem Backing-Service zu begrenzen.
Weitere Informationen finden Sie unter Leistung optimieren.
Verbindungsprobleme beheben
Wenn bei Ihrem Cloud Run-Dienst Verbindungsprobleme auftreten, können Sie das Problem mit den folgenden Strategien und Tools diagnostizieren:
PCAP-Sidecar: Für eine detailliertere Analyse auf Netzwerkebene können Sie ein PCAP-Sidecar neben Ihrem Cloud Run-Dienst bereitstellen. Dieser Sidecar-Container führt eine Paketerfassung mit
tcpdumpim selben Netzwerk-Namespace durch. Der Sidecar-Container ist vom Haupt-Ingress-Container entkoppelt und erfordert keine Änderungen, um eine Paketerfassung durchzuführen. Sidecars verwenden auch eigene Ressourcen, wodurch verhindert wird, dasstcpdumpmit den Ressourcen konkurriert, die Sie dem primären Dienst zuweisen.Netzwerk-Intelligence und Konnektivitätstests für Cloud Run-Revisionen und Cloud Run-Funktionen: Führen Sie automatisierte Prüfungen des Netzwerkpfads zwischen Ihrer Cloud Run-Ressource und einem Endpunkt durch. So können Sie Fehlkonfigurationen finden, die den Traffic zu oder von Ihrer Cloud Run-Ressource blockieren, wenn Sie eine Verbindung zu einer VM-Instanz, einer IP-Adresse oder einem von Google verwalteten Dienst herstellen.
Logs für Ihre Cloud Run-Ressource ansehen: In den Logs werden Fehlermeldungen zu Verbindungsproblemen angezeigt, z. B. Fehler, Zeitüberschreitungen oder abgelehnte Verbindungen. Aus diesen Logs geht oft hervor, ob das Verbindungsproblem mit Ihrer Anwendung oder dem Netzwerk zusammenhängt.
Nächste Schritte
Wenn Sie in der Cloud Run-Dokumentation keine Lösung für Ihr Problem finden, gehen Sie so vor:
- Wenden Sie sich an Cloud Customer Care, um eine Supportanfrage zu eröffnen.
- Stellen Sie Fragen auf Stack Overflow, um Support von der Community zu erhalten, oder suchen Sie mit dem Tag
google-cloud-runnach ähnlichen Problemen. - Verwenden Sie die öffentliche Problemverfolgung, um Fehler zu melden oder Funktionen anzufordern.