Esta página mostra como resolver problemas com a extração de payload.
Erros de código de status HTTP
Ao usar a extração de payload, erros comuns de código de status HTTP podem ocorrer.
É possível monitorar os erros com a push_request_count métrica.
400 (solicitação inválida)
O erro a seguir ocorre quando o Pub/Sub não consegue processar a solicitação devido a uma configuração incorreta ou dados ausentes.
400 Bad Request
Esse erro ocorre por vários motivos. Confira algumas das causas mais comuns:
- O payload (dados da mensagem) não corresponde ao formato de solicitação esperado especificado pelo endpoint HTTP.
- Os cabeçalhos necessários para processar a solicitação estão ausentes.
- Um endpoint HTTP incorreto está configurado para a assinatura.
Para resolver esse problema, tente o seguinte:
- Verifique o formato do payload (dados da mensagem). Confira se ele corresponde ao formato de solicitação esperado especificado pelo endpoint HTTP.
- Verifique se a solicitação contém os cabeçalhos necessários. Se os cabeçalhos estiverem ausentes, talvez seja necessário adicioná-los aos atributos da mensagem. Por exemplo, talvez seja necessário incluir
Content-Type, mas outros também podem ser necessários. - Confirme se o endpoint HTTP configurado para sua assinatura é válido.
- Ative a fila de mensagens mortas (DLQ) na assinatura por push. Isso redireciona mensagens individuais que não podem ser entregues. É útil ativar a DLQ se você encontrar um pequeno número de erros 400 que quer inspecionar.
401 (não autorizado) / 403 (proibido)
O erro a seguir ocorre quando o Pub/Sub não consegue processar a solicitação devido a credenciais incorretas ou inválidas.
401 unauthorized / 403 forbidden
Esse erro ocorre porque a assinatura por push não está autenticada.
Para resolver esse problema, tente o seguinte:
Ative a autenticação push. Usar a autenticação push é importante se você estiver fazendo a integração com o Cloud Run ou o App Engine.
Se a autenticação push não funcionar com sua solução, talvez seja necessário adicionar sua própria chave de autorização ou chave de API nos atributos da mensagem de publicação.
415 (tipo de mídia incompatível)
O erro a seguir ocorre quando o Pub/Sub não consegue processar a solicitação porque o formato do payload não é compatível.
415 Unsupported Media Type
Esse erro ocorre por vários motivos. Confira algumas das causas mais comuns:
- O endpoint não tem o cabeçalho de tipo de mídia necessário.
Para resolver esse problema, tente o seguinte:
- É provável que o endpoint exija um cabeçalho
Content-Type. Por padrão, a extração de payload não define um cabeçalho de tipo de mídia. É possível definir umContent-Typecabeçalho anexando-o como um atributo de mensagem de publicação.
431 (campos do cabeçalho da solicitação muito longos) / 413 (conteúdo muito grande)
O erro a seguir ocorre quando o Pub/Sub não consegue processar a solicitação porque o conteúdo enviado na solicitação é muito grande.
431 request header fields too Large / 413 content too large
Esse erro ocorre se os atributos em uma mensagem do Pub/Sub mensagem excederem o tamanho do limite do cabeçalho de um servidor.
Para resolver esses problemas, tente o seguinte:
- Desative a opção Gravar metadados.
- Ative a fila de mensagens mortas (DLQ) na assinatura por push. Isso redireciona mensagens individuais que não podem ser entregues. Depois disso, a assinatura continua funcionando, mas as mensagens com erros são redirecionadas para um tópico separado para análise mais detalhada.
Verificar se a extração de payload está ativada
No Cloud de Confiance console do, acesse a página Assinaturas.
Clique no nome do serviço.
A página de detalhes do serviço é aberta.
Na tabela de configuração, encontre os seguintes valores: Extração de dados de mensagens e Gravar metadados de mensagens.
O status da extração de payload (ativada ou desativada) é exibido na linha da tabela correspondente.
A seguir
- Se você ainda tiver problemas com a extração de payload, consulte Receber suporte.