Como solucionar problemas de assinaturas do Cloud Storage

Esta página fornece algumas dicas comuns para solução de problemas para assinaturas do Cloud Storage.

Verificar o estado de uma assinatura do Cloud Storage

Para verificar o estado de uma assinatura, siga estas etapas:

  1. No console do Google Cloud, acesse o Pub/Sub página de assinatura.

    Acessar "Assinaturas"

  2. Verifique o ícone de Estado da sua assinatura do Cloud Storage.

    • Se o ícone for uma marca de seleção verde, a assinatura está íntegra.

    • Se o ícone for um ponto de exclamação vermelho, significa que a assinatura está em estado de erro.

  3. Clique na assinatura do Cloud Storage.

    A página de detalhes da assinatura é aberta.

  4. Verifique a mensagem de erro no Estado da assinatura.

  5. Dependendo da mensagem de erro, vá para a seção relevante nesta para solucionar o problema.

Depois que o problema é resolvido, a assinatura finalmente retorna a um o estado íntegro.

Não é possível criar ou atualizar a assinatura

Estes são alguns dos problemas comuns que você pode enfrentar criar ou atualizar uma assinatura do Cloud Storage.

Erro de bucket não encontrado

Se o bucket que você especificar no fluxo de trabalho de criação ou atualização de assinaturas não existir, o fluxo de trabalho retornará um erro bucket not found. No console do Google Cloud, a mensagem será semelhante a esta:

The Cloud Storage bucket specified cannot be found.

Para resolver o problema, crie o bucket. ou atualize sua assinatura do Cloud Storage para usar um bucket atual.

Erro na conta de serviço

Se você não tiver configurado a conta de serviço do Pub/Sub com o as permissões corretas, o fluxo de trabalho de criação ou atualização de assinaturas retornará um erro. No console do Google Cloud, a mensagem será semelhante a esta:

Cloud Pub/Sub did not have the necessary permissions configured to access
the provided bucket my-bucket (or the bucket may not exist).
Please verify that the service account
service-112233445566@gcp-sa-pubsub.iam.gserviceaccount.com
was granted the Storage Legacy Bucket Reader and Storage Object Creator
roles for the provided bucket.

Para resolver o problema, verifique se a conta de serviço as permissões corretas.

O estado da assinatura mostra uma exclamação vermelha

Se você editar o bucket depois de criar uma assinatura, isso poderá afetar como o Pub/Sub grava mensagens no bucket. Se uma mudança resultar em um problema, o campo de estado da assinatura será definidos como um estado de erro.

Na página de detalhes da assinatura, verifique o estado do campo Subscription state. O campo Subscription state mostra um erro mais específico, que pode ser uma das seguintes:

  • Bucket não encontrado: o bucket foi excluído. Crie o bucket novamente ou atualize o assinatura para usar um bucket atual.

  • Permissão do bucket negada: a conta de serviço do Pub/Sub não tem permissão para gravar no bucket. Verifique se a conta de serviço tem as permissões corretas.

Enquanto uma assinatura do Pub/Sub estiver em estado de erro, as mensagens não são gravadas no bucket e permanecem o backlog de assinaturas. As mensagens não são entregues a um tópico de mensagens inativas anexado, se estiver configurado. As mensagens não confirmadas são retidas para o período definido em message_retention_duration (sete dias por padrão).

A assinatura processa as mensagens muito lentamente

Algumas configurações de assinatura podem atrasar o processamento das mensagens.

Por exemplo, ativar a ordenação de mensagens no Cloud Storage pode fazer com que as mensagens sejam gravadas no Cloud Storage, finalizada para atrasar mensagens subsequentes com a mesma chave de ordem. Para melhorar o desempenho, use um espectro mais amplo de chaves de ordem ao publicar mensagens ou ao desativar a ordem das mensagens, caso seus caso de uso não exija isso.

Definir um tamanho de arquivo máximo muito baixo para sua assinatura do Cloud Storage também podem afetar negativamente o desempenho. O tamanho de arquivo máximo é muito baixo pode fazer com que o Pub/Sub crie muitos objetos do Cloud Storage com apenas um um pequeno número de mensagens em cada objeto. A sobrecarga adicional de a criação e a finalização de objetos atrasa o processamento das mensagens. Para melhorar o desempenho, aumente a configuração de tamanho máximo de arquivo para sua assinatura do Cloud Storage ou remover a restrição de tamanho de arquivo.

Limitações de cota

Outra possibilidade é que seu projeto tenha atingido o push do Pub/Sub. cota de capacidade de processamento (pubsub.googleapis.com/regionalpushsubscriber). Para verificar se você está encontrando limitações de cota, examine as solicitações de push métrica (subscription/push_request_count) para quaisquer erros resource_exhausted.

Revise as cotas do seu projeto e verifique se você tem cota suficiente restantes. Acesse IAM e Administrador > Cotas dentro do projeto que contém sua assinatura do Pub/Sub. Procure o pubsub.googleapis.com/regionalpushsubscriber. Se você estiver alcançando o limite de cota, solicite uma cota maior.

A assinatura cria mais arquivos do que o esperado

Para melhorar a escalonabilidade, sua assinatura do Cloud Storage pode ser processado por vários back-ends do Pub/Sub. Cada back-end gravações em um arquivo separado do Cloud Storage. Assim, é possível observar o Cloud Storage criar mais arquivos do que o esperado, especialmente para cargas de trabalho com baixa capacidade de processamento.

Esse é um comportamento normal. Se você quiser reduzir o número de arquivos criados a assinatura, considere aumentar as configurações de agrupamento de arquivos no para permitir arquivos maiores. Também é possível pós-processar os arquivos compondo em uma um número menor de arquivos maiores.

A seguir