Como coletar informações de depuração com o sosreport

O Container-Optimized OS inclui o utilitário sosreport. O sosreport coleta informações para ajudar você a depurar problemas em uma instância de máquina virtual do COS. As informações são coletadas e armazenadas localmente no sistema de arquivos da instância do COS. O Google não coleta nem armazena esses dados em outro lugar.

Se você abrir um caso de suporte com o suporte do Google Cloud devido a problemas com a 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

O comando sosreport está incluído no marco COS 69 e superior. Para criar um relatório, execute o comando 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.

sudo sosreport --all-logs --batch --tmp-dir=/var

A saída é armazenada em um arquivo .tar.xz no diretório especificado usando a opção --tmp-dir. O local do arquivo .tar.xz é mostrado em STDOUT, bem como a soma de verificação:

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]