Nesta página, mostramos como resolver problemas que podem ocorrer ao usar o Eventarc.
Para problemas específicos de destinos que você também pode encontrar, consulte a solução de problemas:
Provedor do Eventarc
Esta seção fornece dicas de solução de problemas na origem de eventos (o provedor).
O provedor não existe.
Verifique se o provedor existe e se você especificou os filtros de gatilho corretamente.
Os eventos são produzidos no provedor, mas não são recebidos no destino
Verifique se você está filtrando eventos de provedores que estão em uma região compatível com o destino. Para mais informações, consulte locais compatíveis com o Eventarc e saiba mais sobre os locais do Eventarc.
O gatilho não está entregando eventos
Verifique se o provedor está gerando eventos. Verifique os registros de auditoria do Cloud e certifique-se de que o serviço monitorado esteja gravando registros. Se os registros forem gravados, mas os eventos não forem entregues, entre em contato com o suporte.
Verifique se há um tópico do Pub/Sub com o mesmo nome de gatilho.
Para listar gatilhos em todos os locais, execute:
gcloud eventarc triggers list --location=-
Para listar tópicos do Pub/Sub, execute:
gcloud pubsub topics list
Verifique se o nome do tópico do Pub/Sub inclui o nome do gatilho criado. Se o tópico do Pub/Sub estiver ausente, crie um tópico ao criar o gatilho.
Para descrever acionadores e detectar problemas com a condição do gatilho, execute:
gcloud eventarc triggers describe TRIGGER \ --location=LOCATION
Substitua:
TRIGGER
: o ID do gatilho ou um identificador totalmente qualificado.LOCATION
: o local do gatilho do Eventarc.
O comando anterior retorna a condição do gatilho. Se houver um problema com o tópico do Pub/Sub, uma das seguintes condições será retornada:
conditions: transport.pubsub.topic: code: NOT_FOUND message: Pub/Sub topic not found. Try recreating the trigger.
ou
conditions: transport.pubsub.topic: code: UNKNOWN message: Pub/Sub topic status is unknown. Try requesting the trigger description again.
Se aplicável, faça o seguinte:
Se
Pub/Sub topic not found
for retornado, recrie o gatilho para um provedor, tipo de evento e destino específicos](/eventarc/docs/targets#triggers) e crie o tópico.Se
Pub/Sub topic status is unknown
for retornado, execute o comando para descrever o acionador novamente.Se o problema continuar, entre em contato com o Suporte. Para mais informações, consulte Gerenciar acionadores.
Verifique a integridade do tópico do Pub/Sub:
Verifique a configuração do tópico do Pub/Sub. Acesse a página Tópicos.
Monitore se as mensagens forem publicadas no tópico com a métrica:
topic/send_message_operation_count
. Se as mensagens não forem publicadas no tópico, verifique os Registros de auditoria do Cloud e verifique se o serviço monitorado está emitindo registros. Se os registros forem gravados, mas os eventos não forem entregues, entre em contato com o suporte.Monitore se as mensagens forem enviadas com a métrica:
subscription/push_request_count
porresponse_code
. Se erros de push forem relatados, verifique os registros de serviço. Se o endpoint de recebimento retornar um código de status não OK, isso indica que o código do Cloud Run não está funcionando como esperado e você precisa entrar em contato com o suporte.
Gatilho do Eventarc
Nesta seção, você encontra dicas de solução de problemas no gatilho.
Erros de permissão negada
Se você encontrar um erro
Failed to load service details: permission denied
, confirme se as permissões do gatilho estão configuradas corretamente e se a conta de serviço do Pub/Sub recebeu o papeliam.serviceAccountTokenCreator
. Para mais informações, consulte Controle de acesso.Se você encontrar o erro a seguir ao tentar criar um gatilho, aguarde alguns minutos (até sete) e tente criar o gatilho novamente:
Permission denied while using the Eventarc Service Agent. If you recently started to use Eventarc, it may take a few minutes before all necessary permissions are propagated to the Service Agent. Otherwise, verify that it has Eventarc Service Agent role.
Um agente de serviço atua como a identidade de um determinado serviço do Google Cloud para um projeto específico. Para mais informações, consulte Agentes de serviço e confira as permissões do papel de agente de serviço do Eventarc (
roles/eventarc.serviceAgent
).Para verificar se o agente de serviço do Eventarc existe no projeto do Google Cloud e tem o papel necessário, conclua as etapas a seguir:
No console do Google Cloud, abra a página IAM.
Na guia Permissões, marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google.
Na lista de principais, localize o agente de serviço do Eventarc, que usa este formato:
service-PROJECT_NUMBER@gcp-sa-eventarc.iam.gserviceaccount.com
Verifique se o agente de serviço tem o papel Agente de serviço do Eventarc. Se o agente de serviço ainda não o tiver, conceda o papel a ele.
Se você estiver tentando usar uma conta de serviço entre projetos e encontrar um erro de permissão negada para
iam.serviceAccounts.getAccessToken
ouiam.serviceAccounts.actAs
, ou se receber uma mensagem de erro semelhante a...cross-project service accounts are disabled
ouFailed to impersonate...
, verifique se as permissões estão configuradas corretamente. Para mais informações, acesse Usar uma conta de serviço entre projetos.
Cobranças inesperadas ao usar o Eventarc
Ao criar um gatilho, verifique se os filtros configurados podem fazer com que os gatilhos sejam desativados indefinidamente. Para evitar cobranças inesperadas na sua fatura, defina orçamentos mensais e alertas usando o console de faturamento do Google Cloud. Para mais informações, consulte Criar um orçamento.
Informações relacionadas
- Para saber mais sobre o Eventarc, consulte a visão geral.
- Para ver um tutorial sobre a solução de problemas do Eventarc, consulte Depurar um serviço do Cloud Run usando o Eventarc.
- Para problemas de publicação de eventos, consulte Resolver problemas na publicação de eventos.
- Se precisar de mais ajuda, veja Receber suporte.