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 e i produttori di servizi potrebbero appartenere a team o organizzazioni diversi. Per aiutarti a risolvere 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 la rete di applicazioni.
  • Nella directory dei servizi è presente un servizio payment di proprietà e gestito da un altro team (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 paymentservizio ospitato in Service Directory. Poiché possiedono il servizio payment, possono apportare queste 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 alcun endpoint. In questo caso, viene aggiunta una voce di log alla registrazione. 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 impostare avvisi per ricevere notifiche in modo proattivo.

Monitoraggio

Analogamente al caso di logging, 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.

Console Google Cloud

Se un servizio Service Directory viene eliminato ed esiste un allegato a quel servizio nel servizio di backend Cloud Service Mesh, la console Google Cloud mostra un avviso: The attached Service Directory service could not be found.

Passaggi successivi