Applicazione della documentazione

Questa pagina fornisce indicazioni sull'utilizzo di Cloud Shell per scaricare ed eseguire esempi dal repository GitHub golang-samples/profiler. Puoi anche eseguire questi esempi al di fuori di Google Cloud. Per i passaggi di configurazione aggiuntivi richiesti in questo caso, consulta Eseguire il profiling delle applicazioni in esecuzione all'esterno di Google Cloud.

Se scegli di eseguire questi programmi, puoi creare rapidamente dati di profilazione che puoi utilizzare per esplorare le funzionalità dell'interfaccia Cloud Profiler. Puoi anche modificare la tua copia di questi sample, quindi eseguire nuovamente il deployment e analizzare l'impatto delle modifiche utilizzando l'interfaccia di Cloud Profiler.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Enable the Cloud Profiler API.

    Enable the API

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Enable the Cloud Profiler API.

    Enable the API

Avvia Cloud Shell

Nella parte superiore della pagina della console Google Cloud del tuo progetto, fai clic su Attiva Cloud Shell:

Attiva Cloud Shell.

All'interno di un nuovo frame nella parte inferiore della console si apre una sessione di Cloud Shell e vengono visualizzati due messaggi e un prompt della riga di comando. Il primo messaggio elenca il progetto Google Cloud per la sessione Cloud Shell. Il secondo messaggio ti spiega come modificare il progetto della sessione. L'inizializzazione della sessione della shell può richiedere alcuni secondi:

Sessione Cloud Shell.

Ottenere un programma da profilare

Da Cloud Shell, recupera il pacchetto di esempi Go:

git clone https://github.com/GoogleCloudPlatform/golang-samples.git

Il recupero del pacchetto richiede alcuni istanti.

profiler_quickstart

Il sample profiler_quickstart è configurato per eseguire il servizio hello-profiler. La guida rapida di Profiler utilizza questo esempio.

Per avviare hello-profiler:

  1. Passa alla directory profiler_quickstart:

    cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/profiler_quickstart
    
  2. Avvia il servizio eseguendo il seguente comando:

    go run main.go
    

Il messaggio profiler has started viene visualizzato nella sessione Cloud Shell alcuni secondi dopo l'avvio del servizio. I nuovi messaggi vengono visualizzati ogni volta che un profilo viene caricato nel tuo progetto Google Cloud.

Per interrompere il servizio, premi Ctrl+C.

hotapp

L'esempio hotapp utilizza un ciclo infinito che chiama due funzioni e poi lo scheduler Go. Il sample supporta l'impostazione del flag -local_work. Quando questo indicatore è true, il lavoro, sotto forma di cicli for, viene aggiunto alle singole funzioni. Per impostazione predefinita, questo flag è impostato su false.

Per eseguire il sample hotapp:

  1. Passa alla directory hotapp:

    cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/hotapp
    
  2. Avvia il servizio eseguendo il seguente comando:

    go run main.go
    

    Se vuoi generare dati di profilo coerenti con quelli mostrati nella documentazione di Cloud Profiler, utilizza la seguente chiamata:

    go run main.go -service=docdemo-service -local_work -skew=75 -version=1.75.0
    

Il messaggio profiler has started viene visualizzato nella sessione Cloud Shell alcuni secondi dopo l'avvio del servizio. I nuovi messaggi vengono visualizzati ogni volta che un profilo viene caricato nel tuo progetto Google Cloud.

Per interrompere il servizio, premi Ctrl+C.

La sezione sul confronto dei profili ha utilizzato due diversi deployment di docdemo-service. In un deployment, skew e version sono stati impostati come descritto in precedenza. Nella seconda implementazione, skew è stato impostato su 25 e version su 1.25.0.

Risoluzione dei problemi

Se dopo aver avviato il servizio ricevi un messaggio di errore di autorizzazione negata, consulta Errori nella configurazione del progetto Google Cloud.