Fehlerbehebung bei einem Push-Abo

Push-Abonnenten sind eine Art Pub/Sub-Abonnenten, bei dem Nachrichten von Pub/Sub an einen vom Nutzer angegebenen HTTPS-Endpunkt gesendet werden. Der Nutzer bestätigt eine übermittelte Nachricht, indem er eine HTTP 200-Antwort auf die Anfrage des Push-Servers zurückgibt. Dieses Dokument enthält einige allgemeine Tipps zur Fehlerbehebung bei Pub/Sub-Push-Abos. Weitere Informationen zu Push-Abos finden Sie im Push-Abonnentenleitfaden.

Damit Sie Ihr Pub/Sub-Abo effektiv überwachen können, sollten Sie sich zuerst den Statuscode für die Auslieferungslatenz (subscription/delivery_latency_health_score) ansehen, um zu prüfen, welche Faktoren zu einer unerwarteten Latenz beitragen können.

Fehlerhafte oder langsame Push-Endpunkte

Wenn der Endpunkt einen Fehlerantwortcode zurückgibt, gilt die Nachrichtenübermittlung als fehlgeschlagen und es wird später ein neuer Versuch unternommen. Dies kann dazu führen, dass der Endpunkt doppelte Nachrichten erhält.

Es gibt mehrere Messwerte, mit denen Sie Push-Abos überwachen können. Der Messwert subscription/push_request_count in Cloud-Messwerten kategorisiert Antworten vom Push-Endpunkt nach response_code und response_class. Die Antworten sind hilfreich, um potenzielle Endpunktfehler zu identifizieren. Wenn dieser Messwert Daten mit einem anderen response_class als ack enthält, gibt der Push-Endpunkt Fehler an Pub/Sub zurück. Zu den häufigsten Fehlern gehören:

  • Die Antwortklasse deadline_exceeded gibt an, dass der Push-Endpunkt nicht innerhalb der erforderlichen Bestätigungsfrist (Bestätigungsfrist) geantwortet hat. Der Messwert subscription/push_request_latencies hilft beim Verfolgen der Push-Ack-Latenz.

  • Eine invalid-Antwortklasse gibt an, dass der Endpunkt eine Antwort zurückgesendet hat, die Pub/Sub nicht verstehen oder verarbeiten konnte.

  • Eine remote_server_4xx-Antwortklasse weist normalerweise auf Authentifizierungs- oder Berechtigungsprobleme hin. Dies sind HTTP-Antwortcodes, die vom Endpunkt zurückgegeben werden. Sehen Sie sich daher die Szenarien an, in denen dieser Antwortcode zurückgegeben wird. Wenn die Authentifizierung aktiviert ist, prüfen Sie, ob Ihr Konto die erforderliche Berechtigung für den Endpunkt hat. Weitere Informationen zur Authentifizierung in Push-Abos

  • Die Antwortklasse remote_server_5xx weist auf ein serverseitiges Problem auf der Endpunktseite hin. Der Endpunkt kann die Anfrage nicht verarbeiten. Dies kann an einer laufenden Wartung oder einem Ausfall liegen. Prüfen Sie den Status des Servers, auf dem der Endpunkt gehostet wird.

  • Die Antwortklasse unreachable gibt an, dass der Endpunktserver nicht erreicht werden kann. Überprüfen Sie die Endpunkt-URL auf Tippfehler.

Weitere Informationen zu den häufigsten Fehlercodes der Pub/Sub API.

Einschränkungen für Push-Abos innerhalb eines VPC-SC-Perimeters

Wenn der VPC Service Controls-Schutz (VPC-SC) in einem Projekt aktiviert ist, gibt es Einschränkungen beim Erstellen von Push-Abos. Vorhandene Push-Abos funktionieren weiterhin, aber wenn Sie ein neues Push-Abo erstellen, wird der folgende Fehler angezeigt: Request is prohibited by organization's policy. Insbesondere können neue Push-Abos nur dann erstellt werden, wenn der Push-Endpunkt ein Cloud Run-Dienst ist, der die Standard-URL run.app verwendet. Weitere Informationen und spezifische Einschränkungen finden Sie in der Pub/Sub-Dokumentation und in der VPC-SC-Dokumentation.