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 Messwertsubscription/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-AbosDie 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.