Osservabilità e debug con Service Directory

L'integrazione di Cloud Service Mesh con Service Directory introduce nuove complessità nel debug. All'interno della tua azienda, i consumer di servizi e i producer 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 di applicazioni.
  • In Service Directory è presente un servizio payment di proprietà e gestito da un team diverso (il producer di servizi).
  • Vuoi chiamare il servizio payment dal servizio checkout, quindi creare 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é possiedono il servizio payment, gli utenti possono apportare queste modifiche. Tuttavia, se il servizio payment viene eliminato, 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 ha 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 consentono di eseguire il debug dei problemi. Puoi anche impostare gli avvisi per ricevere notifiche proattive.

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 e 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 collegamento a tale 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