Os assinantes de push são um tipo de assinante Pub/Sub em que as mensagens são enviadas do Pub/Sub para um endpoint HTTPS especificado pelo usuário. O usuário confirma uma mensagem enviada retornando uma resposta HTTP 200 à solicitação do servidor push. Este documento fornece algumas dicas de solução de problemas comuns para assinaturas de push do Pub/Sub. Leia mais sobre assinaturas de push no Guia do assinante de push.
Para monitorar sua assinatura do Pub/Sub de maneira eficaz, recomendamos que você consulte primeiro a pontuação de integridade da latência de entrega (subscription/delivery_latency_health_score
) para saber quais fatores podem estar contribuindo para uma latência inesperada.
Endpoints de push com falha ou lentos
Se o endpoint retornar um código de resposta de erro, a entrega da mensagem será considerada uma falha e será repetida mais tarde. Isso pode fazer com que o endpoint receba mensagens duplicadas.
É possível usar várias métricas para monitorar as assinaturas de push. A métrica subscription/push_request_count
no Cloud Metrics categoriza as respostas do endpoint de push por response_code
e response_class
. As respostas são úteis para a identificação de possíveis falhas no endpoint. Se a métrica tiver dados com um response_class
diferente de ack
, isso indica que o endpoint de push está retornando erros para o Pub/Sub. Alguns dos erros mais comuns incluem:
Uma classe de resposta
deadline_exceeded
indica que o endpoint de push não respondeu dentro do prazo de confirmação (ack) necessário. A métricasubscription/push_request_latencies
ajuda a rastrear a latência de confirmação de push.Uma classe de resposta
invalid
indica que o endpoint enviou de volta uma resposta que o Pub/Sub não conseguiu entender ou processar corretamente.Uma classe de resposta
remote_server_4xx
geralmente indica problemas de autenticação ou permissão. Esses são códigos de resposta HTTP retornados pelo endpoint, então analise as situações em que esse código de resposta é retornado. Se a autenticação estiver ativada, confirme se sua conta tem a permissão correta no endpoint. Saiba mais sobre como a autenticação funciona em assinaturas de push.Uma classe de resposta
remote_server_5xx
indica um problema do lado do servidor no lado do endpoint. O endpoint não consegue processar a solicitação. Isso pode ter acontecido devido a uma manutenção ou falha temporária. Revise o status do servidor que hospeda o endpoint.Uma classe de resposta
unreachable
indica que não é possível acessar o servidor de endpoint. Verifique se há erros de digitação no URL do endpoint.
Saiba mais sobre os códigos de erro mais comuns da API Pub/Sub.
Restrições de assinaturas de push dentro de um perímetro do VPC-SC
Se a proteção do VPC Service Controls (VPC-SC) estiver ativada em um projeto, a criação de assinaturas de push vai ter limitações. As assinaturas de push atuais continuam funcionando, mas ao criar uma nova assinatura de push, você vê o erro: Request is prohibited by organization's policy
. Especificamente, novas assinaturas de push só poderão ser criadas se o endpoint de push for um serviço do Cloud Run usando o URL run.app
padrão. Para mais detalhes e limitações específicas, consulte a documentação do Pub/Sub e a documentação do VPC-SC.