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

  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.

    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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  4. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. 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 the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  6. Inicie o Cloud Shell

    Na parte superior da Google Cloud página da consola do seu projeto, clique em Ativar Cloud Shell:

    Ative o 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:

    Sessão do Cloud Shell.

    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:

    1. Altere para o diretório profiler_quickstart:

      cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/profiler_quickstart
      
    2. Inicie o serviço executando o seguinte comando:

      go run main.go
      

    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:

    1. Altere para o diretório hotapp:

      cd ~/gopath/src/github.com/GoogleCloudPlatform/golang-samples/profiler/hotapp
      
    2. 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
      

    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.