Observabilidade e depuração com o Service Directory

A integração do Cloud Service Mesh com o Service Directory introduz novas complexidades na depuração. Na sua empresa, os consumidores de serviços e os produtores de serviços podem pertencer a equipas ou organizações diferentes. Para ajudar a resolver problemas deste tipo, o Cloud Service Mesh integra-se com o Cloud Logging e o Cloud Monitoring.

Por exemplo:

  • Tem um serviço checkout que usa a malha de serviços na nuvem para a rede de aplicações.
  • Existe um serviço payment no Service Directory que uma equipa diferente (o produtor de serviços) detém e mantém.
  • Quer chamar o serviço payment a partir do serviço checkout, por isso, cria um novo serviço de back-end na malha de serviços na nuvem. Este serviço de back-end associa-se ao serviço payment através do Service Directory para a deteção de serviços.

Neste modelo, o produtor do serviço pode querer eliminar ou modificar o paymentserviço alojado no Service Directory. Porque são proprietários do serviço payment e, por isso, têm autorização para fazer essas alterações. No entanto, se o serviço payment for eliminado, a deteção de serviços fica danificada.

Registo

Quando o Cloud Service Mesh resolve um serviço de back-end associado a um serviço do Service Directory, recebe uma lista de pontos finais do Service Directory. Se o serviço tiver sido eliminado do Service Directory, o Cloud Service Mesh não recebe nenhum ponto final. Nesse caso, é adicionada uma entrada de registo ao Registo. A entrada do registo inclui as seguintes informações:

  • O nome do serviço de back-end
  • O nome do diretório de serviços
  • Uma mensagem: Service Directory returned 0 endpoints for this service.

Estas informações ajudam a depurar problemas. Também pode configurar alertas para receber notificações proativas.

Monitorização

Tal como no caso do registo, o Cloud Service Mesh integra-se com o Monitoring para gerar métricas. O Cloud Service Mesh adiciona as seguintes métricas ao Monitoring para cada serviço de back-end:

  • O nome do serviço de back-end
  • O número de pontos finais associados a este serviço de back-end que são partilhados com os clientes da Cloud Service Mesh

Os clientes da Cloud Service Mesh não conseguem enviar tráfego para serviços de back-end que não têm pontos finais.

Google Cloud consola

Se um serviço do Service Directory for eliminado e existir um anexo a esse serviço no serviço de back-end do Cloud Service Mesh, aGoogle Cloud consola apresenta um aviso: The attached Service Directory service could not be found.

O que se segue?