O Container-Optimized OS inclui o utilitário sosreport
, que coleta
informações sob demanda para ajudar a depurar problemas em uma instância de máquina virtual
do Container-Optimized OS. As informações são coletadas e armazenadas localmente no
sistema de arquivos da instância. O Google não coleta nem armazena esses dados em
outro lugar.
Se você abrir um caso de suporte com o suporteGoogle Cloud
devido a problemas com sua instância, talvez seja necessário fornecer os dados sosreport
como parte da investigação. Esta página mostra como coletar essas informações.
A saída de sosreport
é armazenada sem criptografia em um arquivo .tar.xz
.
O arquivo pode conter informações de identificação pessoal (PII), pois ele coleta dados de muitos componentes críticos do sistema (por exemplo, journald). O arquivo pode ser inspecionado na instância, e a maioria do conteúdo está em texto simples. A ferramenta sosreport
é de código aberto, e você pode revisar o código.
Como coletar os dados do sosreport
Para gerar um sosreport:
Conecte-se à instância usando o comando
gcloud compute ssh
.gcloud compute ssh [INSTANCE_NAME] --zone [ZONE] --project [PROJECT_ID]
Verifique a versão do SO:
sudo cat /etc/os-release| egrep -w 'NAME|VERSION'
O resultado será assim:
NAME="Container-Optimized OS" VERSION=105
Execute o comando
sos
correspondente à sua versão do SO:
COS 85 e anteriores
Execute o comando sosreport
a seguir para coletar os registros:
sudo sosreport --all-logs --batch --tmp-dir=/var
Se o comando anterior falhar com sosreport: command not found
, instale o
pacote sosreport
e execute o comando sosreport
anterior:
sudo toolbox
sudo apt install sosreport -y
COS 105 e versões mais recentes
Execute o comando sos
a seguir para coletar os registros:
sudo sos report --all-logs --batch --tmp-dir=/var
Se o comando anterior falhar com sos: command not found
, instale o
pacote sosreport
e execute o comando sos report
anterior:
sudo toolbox
sudo apt install sosreport -y
Ubuntu 18 e anteriores
Execute o comando sosreport
a seguir para coletar os registros:
sudo sosreport --all-logs --batch --tmp-dir=/var
Se o comando anterior falhar com sosreport: command not found
, instale o
pacote sosreport
e execute o comando sosreport
anterior:
sudo apt install sosreport
Ubuntu 20 e versões mais recentes
Execute o comando sos
a seguir para coletar os registros:
sudo sos report --all-logs --batch --tmp-dir=/var
Se o comando anterior falhar com sos: command not found
, instale o
pacote sosreport
e execute o comando sos report
anterior:
sudo apt install sosreport
É possível alterar o diretório em que o relatório está armazenado passando um
diretório diferente para a opção --tmp-dir
. Você também pode alterar o comportamento padrão
do comando editando /etc/sos.conf
na instância.
A saída é armazenada em um arquivo .tar.xz
no diretório especificado usando a opção --tmp-dir
. O local e a soma de verificação do arquivo .tar.xz
são mostrados em
STDOUT.
Your sosreport has been generated and saved in:
/var/sosreport-cos-20181106231224.tar.xz
The checksum is: 5a8b97c6020346a688254c8b04ef86ec
Como visualizar os dados coletados
O relatório pertence a root
e não pode ser lido por outros usuários. Use os seguintes comandos para alterar o proprietário para seu usuário atual e torná-lo legível por você. Não torná-lo legível.
TARBALL=[PATH/TO/TARBALL] sudo chown $(whoami) $TARBALL chmod +r $TARBALL
Em seguida, se você quiser visualizar o conteúdo do relatório no nó, poderá extraí-lo executando o comando abaixo:
tar xvf $TARBALL
Os arquivos de relatório individuais agora estão disponíveis em um diretório no mesmo local que o .tar.xz
. É possível visualizar os registros usando comandos como less
ou comandos como grep
para encontrar informações neles.
Fazer o download do relatório
Para fazer o download do relatório para sua máquina local, use o comando gcloud compute scp
:
gcloud compute scp $(whoami)@[INSTANCE_NAME]:[PATH/TO/FILE] [LOCAL/PATH/TO/DIRECTORY]