Esta página oferece algumas dicas comuns de 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:
No console do Google Cloud, acesse a página de assinaturas do Pub/Sub.
Verifique o ícone 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, a assinatura está em um estado de erro.
Clique na assinatura do Cloud Storage.
A página de detalhes da assinatura é aberta.
Verifique a mensagem de erro em Estado da assinatura.
Dependendo da mensagem de erro, acesse a seção relevante nesta página para resolver o problema.
Depois que o problema for resolvido, a assinatura vai retornar a um estado saudável.
Não foi possível criar ou atualizar a assinatura
Confira alguns problemas comuns que podem ocorrer se você tiver dificuldades para criar ou atualizar uma assinatura do Cloud Storage.
Erro de bucket não encontrado
Se o bucket especificado no fluxo de trabalho de criação ou atualização de assinatura
não existir, o fluxo de trabalho retornará um erro bucket not found
.
No console do Google Cloud, a mensagem é 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 existente.
Erro da conta de serviço
Se você não tiver configurado a conta de serviço do Pub/Sub com as permissões corretas, o fluxo de trabalho de criação ou atualização de assinaturas vai retornar um erro. No console do Google Cloud, a mensagem é 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 tem as permissões corretas.
O estado da assinatura mostra um ponto de exclamação vermelho
Se você editar o bucket depois de criar uma assinatura, isso poderá afetar a forma como o Pub/Sub grava mensagens no bucket. Se uma mudança resultar em um problema, o campo de estado da assinatura será definido como um estado de erro.
Na página de detalhes da assinatura, verifique o estado do campo Subscription state
.
O campo Subscription state
fornece um erro mais específico,
que pode ser um dos seguintes:
Bucket não encontrado: o bucket foi excluído. Crie o bucket novamente ou atualize a assinatura para usar um bucket existente.
Permissão do bucket negada: a conta de serviço do Pub/Sub não tem mais 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 no estado de erro,
as mensagens não serão gravadas no bucket e permanecerão no
backlog da assinatura. As mensagens não são entregues a um
tópico de mensagens inativas anexado,
se configurado. As mensagens não confirmadas são retidas
pelo período definido em message_retention_duration
(sete dias por padrão).
A assinatura processa mensagens muito lentamente
Algumas configurações de assinatura podem desacelerar o processamento de mensagens.
Por exemplo, ativar a ordenação de mensagens na assinatura do Cloud Storage pode fazer com que as mensagens sejam gravadas no Cloud Storage, mas não sejam finalizadas para atrasar mensagens subsequentes com a mesma chave de ordenação. Para melhorar o desempenho, use um espectro mais amplo de chaves de ordenação ao publicar mensagens ou desative a ordenação de mensagens se o caso de uso não exigir isso.
Definir um tamanho máximo de arquivo muito baixo para sua assinatura do Cloud Storage também pode afetar negativamente a performance. Um tamanho máximo de arquivo muito baixo pode fazer com que o Pub/Sub crie muitos objetos do Cloud Storage com apenas um pequeno número de mensagens em cada um. A sobrecarga adicional de criação e finalização de objetos diminui a velocidade do processamento de mensagens. Para um desempenho melhor, aumente a configuração de tamanho máximo de arquivo da sua assinatura do Cloud Storage ou remova a restrição de tamanho de arquivo.
Limitações de cota
Outra possibilidade é que seu projeto tenha atingido a cota de throughput de push
do Pub/Sub (pubsub.googleapis.com/regionalpushsubscriber
).
Para verificar se você está enfrentando limitações de cota, examine a métrica de solicitações de push (subscription/push_request_count
)
para encontrar erros de resource_exhausted
.
Revise as cotas do projeto e verifique se você tem cota suficiente. Acesse IAM e administrador > Cotas no projeto que contém
sua assinatura do Pub/Sub. Pesquise a cota
pubsub.googleapis.com/regionalpushsubscriber
. Se você estiver atingindo o
limite de cota, solicite uma cota maior.
A assinatura cria mais arquivos do que o esperado
Para melhorar a escalabilidade, sua assinatura do Cloud Storage pode ser processada por vários back-ends do Pub/Sub. Cada back-end grava em um arquivo separado do Cloud Storage. Portanto, é possível observar que o Cloud Storage cria mais arquivos do que o esperado, principalmente para cargas de trabalho de baixa taxa de transferência.
Isso é normal. Se você quiser reduzir o número de arquivos criados pela assinatura, aumente as configurações de agrupamento de arquivos na assinatura para permitir arquivos maiores. Também é possível processar os arquivos depois de compor em um número menor de arquivos maiores.
A seguir
- Se você ainda tiver problemas com sua assinatura do Cloud Storage, consulte Como receber suporte.