Applicazione della documentazione
Questa pagina fornisce indicazioni sull'utilizzo di Cloud Shell per scaricare ed esegui esempi da GitHub golang-samples/profiler repository Git. Puoi anche eseguire questi esempi al di fuori in 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 che puoi utilizzare per esplorare le funzionalità dell'interfaccia di Cloud Profiler. Puoi anche modificare la tua copia di questi esempi, quindi rieseguire il deployment e analizzare l'impatto delle modifiche usando l'interfaccia di Cloud Profiler.
Prima di iniziare
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Cloud Profiler API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Cloud Profiler API.
Avvia Cloud Shell
Nella parte superiore della pagina della console Google Cloud relativa al tuo progetto, fai clic su Attiva Cloud Shell:
Una sessione di Cloud Shell si apre all'interno di un nuovo frame nella parte inferiore nella console Cloud e vengono visualizzati due messaggi e un prompt della riga di comando. Il primo elenca il progetto Google Cloud per Cloud Shell durante la sessione. Il secondo messaggio indica come modificare il progetto della sessione. L'inizializzazione della sessione della shell può richiedere alcuni secondi:
Ottenere un programma da profilare
Da Cloud Shell, recupera il pacchetto degli esempi di 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
:
Passa alla directory
profiler_quickstart
:cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/profiler_quickstart
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. Vengono visualizzati nuovi messaggi
ogni volta che un profilo viene caricato in Google Cloud
progetto.
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
è true
, il lavoro, sotto forma di loop for, viene aggiunto ai singoli
funzioni. Per impostazione predefinita, questo flag è impostato su false
.
Per eseguire l'esempio hotapp
:
Passa alla directory
hotapp
:cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/hotapp
Avvia il servizio eseguendo questo 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 relativa al confronto dei profili utilizzati
due diversi deployment di docdemo-service
. In un deployment,
skew
e version
sono state impostate come descritto in precedenza. Nella seconda
implementazione, skew
è stato impostato su 25
e version
su 1.25.0
.
Risoluzione dei problemi
Se ricevi un messaggio di errore di autorizzazione negata dopo aver avviato il servizio: vedi Errori di configurazione del progetto Google Cloud.