Aplicação de documentação
Esta página fornece orientações sobre a utilização do Cloud Shell para transferir e executar exemplos do repositório golang-samples/profiler do GitHub. Também pode executar estes exemplos fora do Google Cloud. Para ver os passos de configuração adicionais necessários neste caso, consulte o artigo Criar perfis de aplicações em execução fora do Google Cloud.
Se optar por executar estes programas, pode criar rapidamente dados de criação de perfis que pode usar para explorar as capacidades da interface do Cloud Profiler. Também pode modificar a sua cópia destes exemplos e, em seguida, voltar a implementá-los e analisar o impacto das alterações através da interface do Cloud Profiler.
Antes de começar
- 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.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Enable the Cloud Profiler API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Enable the Cloud Profiler API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. Altere para o diretório
profiler_quickstart
:cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/profiler_quickstart
Inicie o serviço executando o seguinte comando:
go run main.go
Altere para o diretório
hotapp
:cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/hotapp
Inicie o serviço executando o seguinte comando:
go run main.go
Se quiser gerar dados de perfil consistentes com os dados apresentados na documentação do Cloud Profiler, use a seguinte invocação:
go run main.go -service=docdemo-service -local_work -skew=75 -version=1.75.0
Inicie o Cloud Shell
Na parte superior da Google Cloud página da consola do seu projeto, clique em Ativar Cloud Shell:
É aberta uma sessão do Cloud Shell num novo frame na parte inferior da consola e são apresentadas duas mensagens e um pedido de linha de comandos. A primeira mensagem apresenta o Google Cloud projeto da sua sessão do Cloud Shell. A segunda mensagem indica-lhe como alterar o projeto da sessão. A inicialização da sessão de shell pode demorar alguns segundos:
Obtenha um programa para criar perfis
No Cloud Shell, obtenha o pacote de exemplos de Go:
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
A obtenção do pacote demora alguns momentos a ser concluída.
profiler_quickstart
O exemplo profiler_quickstart
está configurado para executar o serviço hello-profiler
. O guia de início rápido do Profiler
usa este exemplo.
Para iniciar o hello-profiler
, faça o seguinte:
A mensagem profiler has started
é apresentada na sessão do Cloud Shell
alguns segundos após iniciar o serviço. As novas mensagens são apresentadas
sempre que um perfil é carregado para o seu Google Cloud
projeto.
Para parar o serviço, introduza Ctrl-C.
hotapp
O exemplo hotapp
usa um ciclo infinito que chama duas funções e, em seguida, o agendador do Go. O exemplo suporta a definição da flag -local_work
. Quando esta flag é true
, o trabalho, sob a forma de ciclos for, é adicionado a funções individuais. Por predefinição, esta flag está definida como false
.
Para executar o exemplo hotapp
, faça o seguinte:
A mensagem profiler has started
é apresentada na sessão do Cloud Shell
alguns segundos após iniciar o serviço. As novas mensagens são apresentadas
sempre que um perfil é carregado para o seu Google Cloud
projeto.
Para parar o serviço, introduza Ctrl-C.
A secção sobre a comparação de perfis usou duas implementações diferentes do docdemo-service
. Numa implementação, os elementos skew
e version
foram definidos conforme descrito anteriormente. Na segunda implementação, o skew
foi definido como 25
e o version
foi definido como 1.25.0
.
Resolução de problemas
Se receber uma mensagem de erro de autorização recusada após iniciar o serviço, consulte a secção Erros com a configuração do Google Cloud projeto.