Osservabilità e debug con Service Directory

L'integrazione di Cloud Service Mesh con Service Directory introduce nuove complessità nel debug. All'interno della tua attività, i consumatori di servizi e i produttori di servizi potrebbero appartenere a team o organizzazioni diversi. Per aiutarti a eseguire il debug di questi problemi, Cloud Service Mesh si integra con Cloud Logging e Cloud Monitoring.

Ad esempio:

  • Hai un servizio checkout che utilizza Cloud Service Mesh per il networking delle applicazioni.
  • Esiste un servizio payment in Service Directory di proprietà e gestito da un team diverso (il producer di servizi).
  • Vuoi chiamare il servizio payment dal servizio checkout, quindi crei un nuovo servizio di backend in Cloud Service Mesh. Questo servizio di backend si collega al servizio payment utilizzando Service Directory per Service Discovery.

In questo modello, il producer di servizi potrebbe voler eliminare o modificare il servizio payment ospitato in Service Directory. Poiché sono proprietari del servizio payment, sono autorizzati ad apportare tali modifiche. Tuttavia, se il servizio payment viene eliminato, il Service Discovery non funziona.

Logging

Quando Cloud Service Mesh risolve un servizio di backend collegato a un servizio Service Directory, riceve un elenco di endpoint da Service Directory. Se il servizio è stato eliminato da Service Directory, Cloud Service Mesh non riceve endpoint. In questo caso, viene aggiunta una voce di log a Logging. La voce di log include le seguenti informazioni:

  • Il nome del servizio di backend
  • Il nome di Service Directory
  • Un messaggio: Service Directory returned 0 endpoints for this service.

Queste informazioni ti aiutano a eseguire il debug dei problemi. Puoi anche configurare avvisi per ricevere notifiche proattive.

Monitoraggio

Analogamente al caso della registrazione, Cloud Service Mesh si integra con Monitoring per generare metriche. Cloud Service Mesh aggiunge le seguenti metriche a Monitoring per ogni servizio di backend:

  • Il nome del servizio di backend
  • Il numero di endpoint associati a questo servizio di backend condivisi con i client di Cloud Service Mesh

I client Cloud Service Mesh non sono in grado di inviare traffico ai servizi di backend che non hanno endpoint.

ConsoleGoogle Cloud

Se un servizio Service Directory viene eliminato e esiste un collegamento a questo servizio nel servizio di backend Cloud Service Mesh, la consoleGoogle Cloud mostra un avviso: The attached Service Directory service could not be found.

Passaggi successivi