Container-Optimized OS incluye la utilidad sosreport
, que recoge información bajo demanda para ayudarte a depurar problemas en una instancia de máquina virtual de Container-Optimized OS. La información se recoge y se almacena de forma local en el sistema de archivos de la instancia. Google no recoge ni almacena estos datos en ningún otro lugar.
Si abres un caso de asistencia con el Google Cloud equipo de Asistencia
debido a problemas con tu instancia, es posible que se te pida que proporciones los sosreport
datos como parte de la investigación. En esta página se explica cómo recoger esta información.
La salida de sosreport
se almacena sin cifrar en un archivo .tar.xz
.
El archivo puede contener información personal identificable (IPI), ya que recoge datos de muchos componentes críticos del sistema (por ejemplo, journald). El archivo se puede inspeccionar en la instancia y la mayor parte del contenido está en texto sin formato. La sosreport
herramienta es de código abierto y puedes revisar su código.
Recoger los datos de sosreport
Para generar un sosreport, sigue estos pasos:
Conéctate a la instancia mediante el comando
gcloud compute ssh
.gcloud compute ssh [INSTANCE_NAME] --zone [ZONE] --project [PROJECT_ID]
Comprueba la versión del SO:
sudo cat /etc/os-release| egrep -w 'NAME|VERSION'
El resultado debería ser similar al siguiente:
NAME="Container-Optimized OS" VERSION=105
Ejecuta el comando
sos
que corresponda a tu versión del SO:
COS 85 y versiones anteriores
Ejecuta el siguiente comando sosreport
para recoger los registros:
sudo sosreport --all-logs --batch --tmp-dir=/var
Si el comando anterior falla y muestra sosreport: command not found
, instala el paquete sosreport
y, a continuación, ejecuta el comando sosreport
anterior:
sudo toolbox
sudo apt install sosreport -y
COS 105 y versiones posteriores
Ejecuta el siguiente comando sos
para recoger los registros:
sudo sos report --all-logs --batch --tmp-dir=/var
Si el comando anterior falla y muestra sos: command not found
, instala el paquete sosreport
y, a continuación, ejecuta el comando sos report
anterior:
sudo toolbox
sudo apt install sosreport -y
Ubuntu 18 y versiones anteriores
Ejecuta el siguiente comando sosreport
para recoger los registros:
sudo sosreport --all-logs --batch --tmp-dir=/var
Si el comando anterior falla y muestra sosreport: command not found
, instala el paquete sosreport
y, a continuación, ejecuta el comando sosreport
anterior:
sudo apt install sosreport
Ubuntu 20 y versiones posteriores
Ejecuta el siguiente comando sos
para recoger los registros:
sudo sos report --all-logs --batch --tmp-dir=/var
Si el comando anterior falla y muestra sos: command not found
, instala el paquete sosreport
y, a continuación, ejecuta el comando sos report
anterior:
sudo apt install sosreport
Para cambiar el directorio en el que se almacena el informe, pasa un directorio diferente a la opción --tmp-dir
. También puedes cambiar el comportamiento predeterminado del comando editando /etc/sos.conf
en la instancia.
El resultado se almacena en un archivo .tar.xz
del directorio que especifiques con la opción --tmp-dir
. La ubicación y la suma de comprobación del archivo .tar.xz
se muestran en
STDOUT.
Your sosreport has been generated and saved in:
/var/sosreport-cos-20181106231224.tar.xz
The checksum is: 5a8b97c6020346a688254c8b04ef86ec
Ver los datos recogidos
El informe es propiedad de root
y otros usuarios no pueden leerlo. Usa los siguientes comandos para cambiar el propietario al usuario actual y hacer que tú puedas leerlo. No lo hagas legible para todo el mundo.
TARBALL=[PATH/TO/TARBALL] sudo chown $(whoami) $TARBALL chmod +r $TARBALL
Después, si quieres ver el contenido del informe en el nodo, puedes extraerlo ejecutando el siguiente comando:
tar xvf $TARBALL
Los archivos de informes individuales ahora están disponibles en un directorio en la misma ubicación que .tar.xz
. Puedes ver los registros con comandos como less
o usar comandos como grep
para buscar información en ellos.
Descarga el informe
Para descargar el informe en tu máquina local, usa el gcloud compute scp
comando:
gcloud compute scp $(whoami)@[INSTANCE_NAME]:[PATH/TO/FILE] [LOCAL/PATH/TO/DIRECTORY]