Esta página descreve os registos disponíveis quando usa o Cloud Run e como ver e escrever registos.
O Cloud Run tem vários tipos de registos, e estes são enviados automaticamente para o Cloud Logging:
- Registos de pedidos (apenas serviços): registos de pedidos enviados para serviços do Cloud Run. Estes registos são criados automaticamente.
- Registos de contentores (serviços, tarefas e conjuntos de trabalhadores): registos emitidos a partir das instâncias, normalmente a partir do seu próprio código, escritos em localizações suportadas, conforme descrito no artigo Escrever registos de contentores.
- Registos do sistema (serviços, tarefas e conjuntos de trabalhadores): registos gerados pela plataforma que contêm informações sobre as suas cargas de trabalho. Estes registos são escritos em
varlog/system.
Ver registos
Pode ver registos do seu serviço, tarefa ou conjunto de trabalhadores de várias formas:
- Use a página do Cloud Run na Google Cloud consola
- Use a CLI gcloud para ver registos com o gcloud (apenas serviços)
- Use o Explorador de registos do Cloud Logging na Google Cloud consola
- Use o Cloud Code (apenas serviços)
Ambos os métodos da consola de visualização de registos examinam os mesmos registos armazenados no Cloud Logging, mas o Explorador de registos do Cloud Logging fornece mais detalhes e mais capacidades de filtragem.
Veja os registos no Cloud Run
Pode ver os registos na página do Cloud Run para os seguintes recursos:
Veja registos de um serviço
Para ver os registos de serviço na página do Cloud Run:
Clique no serviço na lista apresentada.
Clique no separador REGISTOS para obter os registos de pedidos e contentores de todas as revisões deste serviço. Pode filtrar por nível de gravidade do registo.
Veja os registos de um trabalho
Para ver os registos de trabalhos na página do Cloud Run:
Localize o trabalho na lista de trabalhos e clique no mesmo.
Clique no separador REGISTOS para obter os registos do contentor para todas as execuções desta tarefa. Pode filtrar por nível de gravidade do registo.
Em alternativa, se quiser ver os registos pré-filtrados para uma execução de tarefa específica, clique na execução de tarefa e, de seguida, clique no separador REGISTOS.
Veja registos de um conjunto de trabalhadores
Para ver os registos do conjunto de trabalhadores na página do Cloud Run:
Clique no conjunto de trabalhadores na lista apresentada.
Clique no separador REGISTOS para obter os registos de pedidos e contentores de todas as revisões deste conjunto de trabalhadores. Pode filtrar por nível de gravidade do registo.
Veja registos de serviços através da CLI do Google Cloud
Pode usar a CLI do Google Cloud para ver registos de seguimento ou ler registos existentes para um serviço do Cloud Run na linha de comandos. Por predefinição, os registos são formatados num formato de linha única otimizado para a consola.
Para monitorizar registos, tem de instalar o componente log-streaming na
CLI Google Cloud. Se o componente não estiver instalado, é-lhe pedido
que o instale quando for necessário.
Veja registos finais na linha de comandos
Para um serviço do Cloud Run, pode monitorizar os registos em tempo real a partir do seu serviço do Cloud Run diretamente na linha de comandos:
gcloud beta run services logs tail SERVICE --project PROJECT-ID
Substituir:
- SERVICE com o nome do serviço do Cloud Run.
- PROJECT-ID com o Google Cloud ID do projeto. Pode ver o ID do projeto executando o comando
gcloud config get-value project.
Leia registos na linha de comandos
Para um serviço do Cloud Run, pode ler os registos existentes de uma das duas formas:
- Num formato otimizado para consolas:
gcloud run services logs read SERVICE --limit=10 --project PROJECT-ID
- Diretamente a partir do Cloud Logging:
gcloud logging read "resource.type=cloud_run_revision AND resource.labels.service_name=SERVICE" --project PROJECT-ID --limit 10
Substituir:
- SERVICE com o nome do serviço do Cloud Run.
- PROJECT-ID com o Google Cloud ID do projeto. Pode ver o ID do projeto executando o comando
gcloud config get-value project.
Veja os registos no Cloud Logging
Para ver os registos do Cloud Run no Explorador de registos do Cloud Logging:
Aceda à página Explorador de registos na Google Cloud consola:
Selecione um Google Cloud projeto existente na parte superior da página ou crie um novo projeto.
Nos menus pendentes, selecione o recurso:
- Revisão do Cloud Run para um serviço
- Tarefa do Cloud Run para uma tarefa
- Cloud Run Worker Pool para um grupo de trabalhadores
Para mais informações, consulte o artigo Usar o Explorador de registos.
Veja os registos de serviço no Cloud Code
Para ver os seus registos no Cloud Code, leia os guias do IntelliJ e do Visual Studio Code.
Leia registos de forma programática
Se quiser ler os registos de forma programática, pode usar um destes métodos:
- Use um destino de registo para o Pub/Sub e um script para extrair do Pub/Sub.
- Chame a API Logging através das bibliotecas cliente para a sua linguagem de programação.
- Chame os pontos finais REST da API Logging diretamente.
Formato e conteúdos dos registos de escalabilidade de instâncias
Quando são iniciadas novas instâncias para o seu serviço do Cloud Run, o Cloud Logging
inclui entradas de registo com o nome do registo varlog/system a explicar por que motivo cada
instância foi criada. A entrada do registo segue este formato:
Starting new instance. Reason: REASON - DESCRIPTION
A tabela seguinte apresenta uma análise detalhada das descrições de instâncias:
| Motivo | Descrição |
|---|---|
MANUAL_OR_CUSTOMER_MIN_INSTANCE |
A instância foi iniciada devido a instâncias mínimas configuradas pelo cliente ou dimensionamento manual. |
AUTOSCALING |
A instância foi iniciada devido a fatores de escalabilidade configurados (como a utilização da CPU, o débito de pedidos, etc.) ou à capacidade existente insuficiente para o tráfego atual. |
DEPLOYMENT_ROLLOUT |
A instância foi iniciada devido à mudança de tráfego entre revisões devido à implementação, ao ajuste da divisão de tráfego ou à verificação do estado de implementação. |
Escrever registos de contentores
Quando escreve registos a partir do seu serviço, tarefa ou conjunto de trabalhadores, estes são recolhidos automaticamente pelo Cloud Logging, desde que sejam escritos em qualquer uma destas localizações:
- Streams de saída padrão (
stdout) ou de erro padrão (stderr) - Quaisquer ficheiros no diretório
/var/log - syslog (
/dev/log) - Registos escritos através das bibliotecas cliente do Cloud Logging, que estão disponíveis para muitos idiomas populares
Espera-se que a maioria dos programadores escreva registos usando a saída padrão e o erro padrão.
Os registos do contentor escritos nestes locais suportados são automaticamente associados ao serviço, à revisão e à localização do Cloud Run, ao conjunto de trabalhadores, à revisão e à localização do Cloud Run ou ao trabalho do Cloud Run. As exceções contidas nestes registos são capturadas e comunicadas no Error Reporting.
O registo integrado equilibra a fiabilidade e a utilização de recursos, e deve funcionar para a maioria das aplicações. A escrita de entradas de registo através do registo integrado não consome a quota para o número de pedidos por minuto da API Cloud Logging.entries.write
Se a sua aplicação tiver requisitos de volume ou fiabilidade mais elevados, recomendamos que use a API Cloud Logging diretamente, quer como uma biblioteca na sua aplicação ou como um contentor sidecar separado.
Use texto simples em vez de JSON estruturado nos registos
Quando escreve registos, pode enviar uma string de texto simples ou enviar uma única linha de JSON serializado, também denominado dados "estruturados". Esta informação é recolhida e
analisada pelo Cloud Logging e é colocada em jsonPayload. Por outro lado, a mensagem de texto simples é colocada em textPayload.
Escreva registos estruturados
O fragmento seguinte mostra como escrever entradas de registo estruturadas. Também mostra como correlacionar as mensagens de registo com o registo de pedidos correspondente.
Node.js
Python
Ir
A estrutura de cada entrada de registo é fornecida por um tipo Entry:
Quando uma estrutura de entrada é registada, o método String é chamado para a serializar para o formato JSON esperado pelo Cloud Logging:
Java
Ative o registo JSON com o Logback e o SLF4J ativando o Logstash JSON Encoder na sua configuração logback.xml.
Personalize os nomes dos campos padrão para excluir conteúdo indesejável da ingestão no payload dos registos. Para ver uma lista dos nomes dos campos e dos formatos de dados esperados, consulte o artigo Use o agente de registo.