Fazer o download dos dados do perfil
Neste documento, descrevemos como fazer o download dos dados do seu perfil para o sistema local e como recuperar dados de perfil de forma programática usando um aplicativo Go.
Fazer o download de perfis usando o console Google Cloud
Para fazer o download do perfil exibido no gráfico de chama, clique em Fazer download get_app.
O Profiler usa a seguinte convenção de nomenclatura para o arquivo transferido:
profiler_[SERVICE_NAME]_[PROFILE_TYPE]_[FROM_DATE]_[TO_DATE]_[ZONE]_[VERSION].pb.gz
Nesta expressão:
SERVICE_NAMEcontém o Serviço selecionado;PROFILE_TYPEcontém o Tipo de perfil selecionado;FROM_DATEeTO_DATEcontém suas especificações de intervalo;ZONEcontém a Zona selecionada;VERSIONcontém a Versão selecionada.
Exemplo: profiler_docdemo-service_HEAP_2018-04-22T20_25_31Z_2018-05-22T20_25_31Z_us-east1-c.pb.gz
Baixar perfis de maneira programática
Para recuperar dados de perfil, use o método da API ListProfiles. O exemplo de programa Go a seguir demonstra o uso dessa API.
O programa de exemplo cria uma pasta no diretório de onde é executado e
gera um conjunto de arquivos pprof numerados. Cada arquivo tem uma convenção de nomenclatura semelhante a profile000042.pb.gz. Cada diretório contém dados de perfil
e um arquivo de metadados, metadata.csv, que contém informações sobre os
arquivos baixados.
O programa de exemplo aceita os seguintes argumentos de linha de comando:
project: o projeto de onde os perfis são extraídos. Obrigatório.page_size: o número máximo de perfis recuperados por chamada de API. O valor máximo depage_sizeé 1.000. Quando não especificado, esse campo é definido como 100.page_token: um token de string gerado por uma execução anterior do programa para retomar os downloads. Opcional.max_profiles: o número máximo de perfis a serem recuperados. Se um número inteiro não positivo for fornecido, o programa tentará recuperar todos os perfis.
Opcional.
Executar o aplicativo de amostra
Para executar o aplicativo de amostra, faça o seguinte:
Clone o repositório:
git clone https://github.com/GoogleCloudPlatform/golang-samples.gitAcesse o diretório que contém o programa de exemplo:
cd golang-samples/profiler/exportExecute o programa depois de substituir YOUR_GCP_PROJECT pelo ID do seu projetoGoogle Cloud :
go run main.go -project YOUR_GCP_PROJECT -page_size 1000 -max_profiles 10000
O programa pode levar um tempo considerável para ser concluído. O programa gera um token para a próxima página depois de recuperar a página atual. Você pode usar o token para retomar o processo se o programa for interrompido.
Ver os perfis baixados
Para ler um arquivo transferido, escrito no formato de buffer de protocolo serializado, use a ferramenta de código aberto pprof.