Mengumpulkan informasi proses debug menggunakan sosreport

Container-Optimized OS menyertakan utilitas sosreport, yang mengumpulkan informasi sesuai permintaan untuk membantu Anda men-debug masalah di instance virtual machine Container-Optimized OS. Informasi dikumpulkan dan disimpan secara lokal di sistem file instance. Google tidak mengumpulkan atau menyimpan data ini di tempat lain.

Jika Anda membuka kasus dukungan dengan dukunganGoogle Cloud karena masalah pada instance, Anda mungkin akan diminta untuk memberikan data sosreport sebagai bagian dari penyelidikan. Halaman ini menunjukkan cara mengumpulkan informasi ini.

Output sosreport disimpan tanpa enkripsi dalam arsip .tar.xz. Arsip tersebut mungkin berisi informasi identitas pribadi (PII), karena mengumpulkan data dari banyak komponen sistem penting (misalnya, journald). Arsip dapat diperiksa di instance, dan sebagian besar kontennya dalam teks biasa. Alat sosreport bersifat open source, dan Anda dapat meninjau kodenya.

Mengumpulkan data sosreport

Untuk membuat sosreport:

  1. Hubungkan ke instance menggunakan perintah gcloud compute ssh.

    gcloud compute ssh [INSTANCE_NAME] --zone [ZONE] --project [PROJECT_ID]
    
  2. Periksa versi OS:

    sudo cat /etc/os-release| egrep -w 'NAME|VERSION'
    

    Outputnya mirip dengan hal berikut ini:

    NAME="Container-Optimized OS"
    VERSION=105
    
  3. Jalankan perintah sos yang sesuai dengan versi OS Anda:

COS 85 dan yang lebih lama

Jalankan perintah sosreport berikut untuk mengumpulkan log:

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

Jika perintah sebelumnya gagal dengan sosreport: command not found, instal paket sosreport, lalu jalankan perintah sosreport sebelumnya:

sudo toolbox
sudo apt install sosreport -y

COS 105 dan yang lebih baru

Jalankan perintah sos berikut untuk mengumpulkan log:

sudo sos report --all-logs --batch --tmp-dir=/var

Jika perintah sebelumnya gagal dengan sos: command not found, instal paket sosreport, lalu jalankan perintah sos report sebelumnya:

sudo toolbox
sudo apt install sosreport -y

Ubuntu-18 dan yang lebih lama

Jalankan perintah sosreport berikut untuk mengumpulkan log:

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

Jika perintah sebelumnya gagal dengan sosreport: command not found, instal paket sosreport, lalu jalankan perintah sosreport sebelumnya:

sudo apt install sosreport

Ubuntu-20 dan yang lebih baru

Jalankan perintah sos berikut untuk mengumpulkan log:

sudo sos report --all-logs --batch --tmp-dir=/var

Jika perintah sebelumnya gagal dengan sos: command not found, instal paket sosreport, lalu jalankan perintah sos report sebelumnya:

sudo apt install sosreport

Anda dapat mengubah direktori tempat laporan disimpan dengan meneruskan direktori lain ke opsi --tmp-dir. Anda juga dapat mengubah perilaku default perintah dengan mengedit /etc/sos.conf pada instance.

Output disimpan dalam file .tar.xz di direktori yang Anda tentukan menggunakan opsi --tmp-dir. Lokasi dan checksum file .tar.xz ditampilkan di STDOUT.

Your sosreport has been generated and saved in:
  /var/sosreport-cos-20181106231224.tar.xz

The checksum is: 5a8b97c6020346a688254c8b04ef86ec

Melihat data yang dikumpulkan

Laporan dimiliki oleh root dan tidak dapat dibaca oleh pengguna lain. Gunakan perintah berikut untuk mengubah pemilik menjadi pengguna saat ini dan membuatnya dapat dibaca oleh Anda. Jangan membuatnya dapat dibaca oleh semua orang.

TARBALL=[PATH/TO/TARBALL]
sudo chown $(whoami) $TARBALL
chmod +r $TARBALL

Kemudian, jika ingin melihat konten laporan di node, Anda dapat mengekstraknya dengan menjalankan perintah di bawah:

tar xvf $TARBALL

Setiap file laporan kini tersedia di direktori di lokasi yang sama dengan .tar.xz. Anda dapat melihat log menggunakan perintah seperti less, atau Anda dapat menggunakan perintah seperti grep untuk menemukan informasi di dalamnya.

Download laporannya

Untuk mendownload laporan ke komputer lokal, gunakan perintah gcloud compute scp:

gcloud compute scp $(whoami)@[INSTANCE_NAME]:[PATH/TO/FILE] [LOCAL/PATH/TO/DIRECTORY]