Gravar e consultar entradas de registros com a gcloud CLI
Neste documento, apresentamos alguns dos recursos do Cloud Logging e mostramos como fazer o seguinte:
- Gravar entradas de registro usando a Google Cloud CLI.
- Liste as entradas de registro usando a CLI gcloud.
- listar entradas de registro usando a API Logging;
- visualizar e consultar entradas de registros usando o Logs Explorer.
Antes de começar
Você precisa ter um projeto do Cloud de Confiance com o faturamento ativado para concluir este guia de início rápido. Se você não tiver um projeto do Cloud de Confiance ou se o faturamento não estiver ativado para o projeto do Cloud de Confiance , faça o seguinte:-
Instale a CLI do Google Cloud.
-
Configure a gcloud CLI para usar sua identidade federada.
Para mais informações, consulte Fazer login na gcloud CLI com sua identidade federada.
-
Para inicializar a gcloud CLI, execute o seguinte comando:
gcloud init -
Crie ou selecione um Cloud de Confiance projeto.
Funções necessárias para selecionar ou criar um projeto
- Selecionar um projeto: não é necessário um papel específico do IAM para selecionar um projeto. Você pode escolher qualquer projeto em que tenha recebido um papel.
-
Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos
(
roles/resourcemanager.projectCreator), que contém a permissãoresourcemanager.projects.create. Saiba como conceder papéis.
-
Crie um projeto do Cloud de Confiance :
gcloud projects create PROJECT_ID
Substitua
PROJECT_IDpor um nome para o projeto Cloud de Confiance que você está criando. -
Selecione o projeto Cloud de Confiance que você criou:
gcloud config set project PROJECT_ID
Substitua
PROJECT_IDpelo nome do projeto do Cloud de Confiance .
-
Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.
-
Verifique se o faturamento está ativado para o projeto do Cloud de Confiance .
Funções exigidas
Para receber as permissões necessárias
para criar, listar e excluir entradas de registro,
peça ao administrador para conceder a você o papel do IAM de
Administrador do Logging (roles/logging.admin) no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.
Os papéis Gravador de registros (roles/logging.logWriter) e Visualizador de registros (roles/logging.viewer) contêm as permissões para criar e listar entradas de registro. Para excluir entradas de registro, conceda o papel de Administrador do Logging (roles/logging.admin), que contém as permissões para criar, listar e excluir entradas de registro. Observe que o papel de administrador do Logging (roles/logging.admin) também concede permissões para realizar todas as ações no Logging.
Gravar entradas de registro usando a CLI gcloud
A geração de registros aceita entradas de registro com dados estruturados e não estruturados. Os dados estruturados consistem em uma estrutura de dados JSON (por exemplo, {"weather": "partly cloudy"}). Os dados não estruturados são uma string de caracteres (por exemplo, "A simple entry").
Nas próximas etapas, você usará a CLI gcloud para gravar uma entrada de registro com dados não estruturados e uma entrada de registro com dados estruturados. A CLI gcloud fornece uma interface de linha de comando para a API Cloud Logging.
Grave uma entrada de registro com dados não estruturados no registro
my-test-loge execute o comandogcloud logging write:gcloud logging write my-test-log "A simple entry."Depois que o comando for concluído, você verá a mensagem:
Created log entry.Grave uma entrada de registro com dados estruturados no registro
my-test-log:gcloud logging write --payload-type=json my-test-log '{ "message": "My second entry", "weather": "partly cloudy"}'Ao gravar uma entrada de registro com dados estruturados, é preciso incluir
--payload-type=json. Se você omitir esse campo, o Logging vai interpretar o payload como dados não estruturados.
Se my-test-log não existir, o Logging criará o registro quando a entrada for recebida.
Listar entradas de registro usando a CLI gcloud
É possível recuperar entradas de registro do Logging e exibi-las usando a CLI gcloud. Por exemplo, para recuperar e exibir as entradas de registro com o tipo de recurso global, execute o seguinte comando:
gcloud logging read "resource.type=global"
O comando retorna um resultado semelhante ao seguinte:
---
insertId: jpj9zjf73t1mn
jsonPayload:
message: My second entry
weather: partly cloudy
logName: projects/myloggingproject/logs/my-test-log
receiveTimestamp: '2018-11-01T18:39:31.114507977Z'
resource:
labels:
project_id: myloggingproject
type: global
timestamp: '2018-11-01T18:39:31.114507977Z'
---
insertId: vd4m1if7h7u1a
logName: projects/myloggingproject/logs/my-test-log
receiveTimestamp: '2018-11-01T18:39:19.718100792Z'
resource:
labels:
project_id: myloggingproject
type: global
textPayload: A simple entry
timestamp: '2018-11-01T18:39:19.718100792Z'
Para informações sobre como ler registros, consulte a
documentação de referência gcloud logging read.
Ver entradas de registro no Explorador de registros
Para ver entradas de registro no Cloud de Confiance console, use a Análise de registros. A maioria dos projetos do Cloud de Confiance armazena um grande número de registros. É possível selecionar determinadas entradas de registro escrevendo uma consulta.
Para ver as entradas de registro que você escreveu usando a Análise de registros, faça o seguinte:
-
No console do Cloud de Confiance , acesse a página Análise de registros:
Acessar a Análise de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
Verifique se o projeto Cloud de Confiance está selecionado na barra de navegação Cloud de Confiance by S3NS. Se necessário, use a lista suspensa do projeto Cloud de Confiance para selecionar seu projeto Cloud de Confiance .
No menu Recurso, selecione Global.
Se a opção de menu Global ou as entradas de registro não forem exibidas, aguarde alguns minutos e atualize a página. Pode demorar alguns minutos para o Logging receber entradas de registro.
Para ver os detalhes de uma entrada de registro, clique no chevron_right Menu.
A primeira entrada de registro tem os dados armazenados em
textPayload. A segunda entrada de registro contém dados estruturados armazenados emjsonPayload. O payload estruturado contém as chavesmessageeweather.
Para informações sobre o formato de dados das entradas de registro, consulte o
tipo LogEntry.
Consultar entradas de registro no Explorador de registros
É possível consultar entradas de registro usando o editor de consultas e, com registros estruturados, pela chave e pelo valor. Por exemplo, para mostrar todas as entradas de registro que contêm o texto simple, faça o seguinte:
-
No console do Cloud de Confiance , acesse a página Análise de registros:
Acessar a Análise de registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
No menu Recurso, selecione Global.
No editor de consultas, insira a string
simpleentre aspas. Apenas a entrada de registroA simple entry.será exibida.Depois de ver o registro, remova a string de consulta adicionada e clique em Executar consulta. As entradas de registro são reexibidas na tela.
Para mostrar todas as entradas de registro com dados estruturados que tenham uma chave weather em que o campo value contém partly, faça o seguinte:
O editor de consultas contém a linha
resource.type="global". Digite este comando:jsonPayload.weather:partlyClique em Executar consulta. O resultado é a única entrada de registro
My second entry.
O Explorador de registros também oferece consultas salvas, sugeridas e recentes. Para mais informações sobre consultas, acesse Criar consultas no Explorador de registros.
Para ver exemplos de consultas, veja Amostra de consultas usando o Explorador de registros.
Solução de problemas
Os erros tipográficos e os nomes de campos desconhecidos resultam em comandos da CLI gcloud preenchidos com mensagens de argumento inválido. Por exemplo, se você esquecer o ponto em
resource.type, o resultado será o erro:ERROR: (gcloud.logging.read) INVALID_ARGUMENT: Field not found: 'resourcetype'.Quando o Cloud Logging não tiver recebido as permissões de acesso necessárias, os comandos da CLI gcloud vão resultar em mensagens de permissão negada. Por exemplo, se uma instância de VM do Compute Engine estiver configurada com as configurações padrão da API, o comando
listresultará em um erro de permissão negada:ERROR: (gcloud.logging.read) PERMISSION_DENIED: Request had insufficient authentication scopes.Para corrigir essa condição, modifique as permissões da instância de VM do Compute Engine para conceder permissão de leitura ao Cloud Logging da seguinte forma:
- Acesse a página Detalhes da instância de VM. Clique em Interromper. Essa ação pode levar um ou dois minutos para ser concluída.
- Para modificar a configuração, clique em Editar.
- Procure o cabeçalho Escopos de acesso da API Cloud e clique em Detalhes para exibir as configurações de cada API. Altere a entrada da API Cloud Logging para Total. Clique em Salvar.
- Para reiniciar a instância de VM, clique em Iniciar. Depois de alguns momentos, sua VM estará pronta para uso.
Limpar
Para evitar cobranças na conta do Cloud de Confiance pelos recursos usados nesta página, exclua o projeto do Cloud de Confiance e os recursos.
(Opcional) Para excluir as entradas de registro que você criou, execute o seguinte comando do
gcloud:gcloud logging logs delete my-test-log
Se você não excluir as entradas de registro, elas vão expirar e serão removidas. Para mais informações, consulte Cotas e limites.
A seguir
- Para detalhes sobre a interface de linha de comando do Logging, leia as
páginas de referência para o grupo de comandos
gcloud logging. - Para ver a documentação sobre a API Logging, leia API Cloud Logging.
- Para mais detalhes sobre a Análise de registros, consulte Como usar a Análise de registros.