Ao criar, testar e executar uma carga de trabalho, pode ser útil monitorar o progresso dela para depurar problemas. As seguintes ferramentas estão disponíveis para monitoramento e depuração:
Cloud Logging: como primeira etapa na solução de problemas de uma carga de trabalho do Confidential Space, é possível redirecionar
STDOUT
eSTDERR
para o Cloud Logging e verificar se há códigos de retorno de carga de trabalho para saber onde ocorreu uma falha.A imagem de depuração do Confidential Space: a imagem de depuração do Confidential Space mantém a VM confidencial executando a carga de trabalho operacional após a conclusão dela e executa um servidor SSH. Isso permite fazer login remotamente na VM para diagnosticar problemas. É útil usar a imagem de depuração até ter certeza de que o código está funcionando corretamente. Quando for a hora de trabalhar com dados de produção sensíveis, mude para a imagem de produção do Confidential Space.
Monitoramento do uso de memória: é possível conferir o uso de memória da carga de trabalho no Cloud Logging ou no Metrics Explorer. O autor da carga de trabalho precisa permitir e o operador da carga de trabalho precisa ativar antes que o uso de memória seja rastreado.
Shell interativo: depois de usar o SSH para se conectar à VM confidencial da carga de trabalho, use o comando
sudo ctr task exec -t --exec-id shell tee-container bash
para inserir um shell interativo dentro do contêiner e diagnosticar problemas da carga de trabalho.
Logging
Como qualquer programa de linha de comando, as cargas de trabalho STDOUT
e STDERR
podem ser
exibidas no console. Ele também pode ser redirecionado para o Cloud Logging pelo
operador de carga de trabalho que define a chave de metadados tee-container-log-redirect
como true
ou cloud_logging
na VM do Confidential Space e
garante que a conta de serviço que executa a carga de trabalho tenha a
função logging.logWriter
.
O redirecionamento pode ser evitado pelo autor da carga de trabalho com a
política de inicialização log_redirect
.
Para reduzir seu perfil de risco, registre a quantidade mínima de informações e não registre informações sensíveis.
Ver registros do Confidential Space
Se a conta de serviço anexada à sua VM do Confidential Space recebeu o papel
logging.logWriter
e você redirecionou os registros para o Cloud Logging, é possível solucionar os erros visualizando os registros da VM:
Acesse Logging no projeto do operador da carga de trabalho no Google Cloud console.
Ao lado da guia Consulta, clique no período para definir o período de registro que você quer visualizar.
Filtre os registros pelos seguintes campos, se estiverem disponíveis:
Tipo de recurso: instância de VM
ID da instância:o ID da instância da VM confidencial
Nome do registro: confidencial-space-launcherer
Leia a mensagem de falha para saber qual é o problema. Um recurso pode não ter sido configurado corretamente, as condições dos atributos nos provedores de WIP dos colaboradores de dados podem não corresponder às declarações feitas pela carga de trabalho do Confidential Space ou a própria carga de trabalho pode ter apresentado um erro.
Códigos de retorno
Os códigos de retorno são exibidos no console ao executar o acesso rápido e a carga de trabalho e podem ser redirecionados para o Cloud Logging.
Os códigos de retorno estão descritos na seguinte tabela:
Código | Definição | Comportamento de parada da VM |
---|---|---|
0 | A carga de trabalho foi concluída com êxito ao usar a imagem de produção. | A VM é interrompida após a conclusão da carga de trabalho. |
1 | A carga de trabalho ou o acesso rápido retornou um erro ao usar a imagem de produção. | A VM é interrompida depois de retornar um erro. |
3 | O acesso rápido foi reiniciado após uma
falha devido ao
tee-restart-policy . |
A VM é reiniciada. |
4 | A execução da carga de trabalho ou do acesso rápido foi concluída ao usar a imagem de depuração e a VM está ociosa. | A VM não para depois que a carga de trabalho é concluída ou retorna um erro. Isso permite depurar a carga de trabalho por SSH. |
Se uma carga de trabalho falhar, um operador de carga de trabalho receberá apenas a mensagem
workload finished with a non-zero return code
, sem contexto adicional. Para
uma imagem de produção, o acesso rápido pode ser definido para reiniciar em caso de falha com
tee-restart-policy=OnFailure
.