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 e i producer di servizi potrebbero appartenere a organizzazioni o team 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.
  • In Service Directory è presente un servizio payment che è di proprietà e gestito da un altro team (il producer di servizi).
  • Vuoi chiamare il servizio payment dal servizio checkout in modo da 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. Essendo il proprietario del servizio payment, è autorizzato ad 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 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 impostare avvisi per ricevere una notifica proattiva.

Monitoraggio

Analogamente alla richiesta di logging, Cloud Service Mesh si integra con Monitoring per generare metriche. Cloud Service Mesh aggiunge a Monitoring le seguenti metriche per ciascun 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 privi di endpoint.

Console Google Cloud

Se un servizio Service Directory viene eliminato ed esiste un collegamento 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