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 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 la rete di applicazioni.
  • In Service Directory è presente un servizio payment di proprietà e gestito da un team diverso (il produttore 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é è il proprietario del servizio payment, è autorizzato ad apportare queste modifiche. Tuttavia, se il servizio payment viene eliminato, Service Discovery non funziona più.

Logging

Quando Cloud Service Mesh risolve un servizio di backend collegato a un servizio Service Directory, ottiene 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 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 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 di Cloud Service Mesh non sono in grado di inviare traffico ai servizi di backend che non hanno endpoint.

Google Cloud Console

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

Passaggi successivi