איסוף מידע על תוצאות ניפוי הבאגים באמצעות sosreport

מערכת הפעלה שמותאמת לקונטיינרים כוללת את כלי השירות sosreport, שאוסף מידע לפי דרישה כדי לעזור לכם לנפות באגים במופע של מכונת VM עם מערכת הפעלה שמותאמת לקונטיינרים. המידע נאסף ונשמר באופן מקומי במערכת הקבצים של המופע. ‫Google לא אוספת או שומרת את הנתונים האלה במקומות אחרים.

אם תפתחו בקשת תמיכה בCloud de Confiance by S3NS תמיכה של בגלל בעיות במופע שלכם, יכול להיות שתתבקשו לספק את sosreport הנתונים כחלק מהחקירה. בדף הזה מוסבר איך לאסוף את המידע הזה.

Cloud Customer Care לקבלת עזרה.

הפלט של sosreport מאוחסן ללא הצפנה בארכיון .tar.xz. יכול להיות שהארכיון יכיל פרטים אישיים מזהים (PII), כי הוא אוסף נתונים מרכיבים קריטיים רבים במערכת (למשל journald). אפשר לבדוק את הארכיון במופע, ורוב התוכן הוא טקסט פשוט. כלי ה-sosreport הוא קוד פתוח, ואפשר לעיין בקוד שלו.

איסוף הנתונים של sosreport

כדי ליצור sosreport:

  1. מתחברים למכונה באמצעות הפקודה gcloud compute ssh.

    gcloud compute ssh [INSTANCE_NAME] --zone [ZONE] --project [PROJECT_ID]
    
  2. בודקים את גרסת מערכת ההפעלה:

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

    הפלט אמור להיראות כך:

    NAME="Container-Optimized OS"
    VERSION=105
    
  3. מריצים את הפקודה sos שמתאימה לגרסת מערכת ההפעלה שלכם:

‫COS 85 ומטה

מריצים את הפקודה הבאה sosreport כדי לאסוף את היומנים:

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

אם הפקודה הקודמת נכשלת עם sosreport: command not found, מתקינים את חבילת sosreport ואז מריצים את הפקודה הקודמת sosreport:

sudo toolbox
sudo apt install sosreport -y

‫COS 105 ואילך

מריצים את הפקודה הבאה sos כדי לאסוף את היומנים:

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

אם הפקודה הקודמת נכשלת עם sos: command not found, מתקינים את חבילת sosreport ואז מריצים את הפקודה הקודמת sos report:

sudo toolbox
sudo apt install sosreport -y

‫Ubuntu-18 וגרסאות קודמות

מריצים את הפקודה הבאה sosreport כדי לאסוף את היומנים:

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

אם הפקודה הקודמת נכשלת עם sosreport: command not found, מתקינים את חבילת sosreport ואז מריצים את הפקודה הקודמת sosreport:

sudo apt install sosreport

‫Ubuntu-20 ואילך

מריצים את הפקודה הבאה sos כדי לאסוף את היומנים:

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

אם הפקודה הקודמת נכשלת עם sos: command not found, מתקינים את חבילת sosreport ואז מריצים את הפקודה הקודמת sos report:

sudo apt install sosreport

כדי לשנות את הספרייה שבה הדוח מאוחסן, מעבירים ספרייה אחרת לאפשרות --tmp-dir. אפשר גם לשנות את התנהגות ברירת המחדל של הפקודה על ידי עריכת /etc/sos.conf במכונה.

הפלט מאוחסן בקובץ .tar.xz בספרייה שאתם מציינים באמצעות האפשרות --tmp-dir. המיקום וסכום הבדיקה של קובץ .tar.xz מוצגים ב-STDOUT.

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

The checksum is: 5a8b97c6020346a688254c8b04ef86ec

צפייה בנתונים שנאספו

הדוח נמצא בבעלות של root ומשתמשים אחרים לא יכולים לקרוא אותו. משתמשים בפקודות הבאות כדי לשנות את הבעלים למשתמש הנוכחי ולהגדיר שהקובץ יהיה קריא עבורכם. אל תגדירו את הקובץ כקריא לכולם.

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

אם רוצים לראות את תוכן הדוח בצומת, אפשר לחלץ אותו באמצעות הפקודה הבאה:

tar xvf $TARBALL

קבצי הדוחות האישיים זמינים עכשיו בספרייה באותו מיקום כמו .tar.xz. אפשר להציג את היומנים באמצעות פקודות כמו less, או להשתמש בפקודות כמו grep כדי למצוא בהם מידע.

הורדת הדוח

כדי להוריד את הדוח למחשב המקומי, מפעילים את הפקודה gcloud compute scp:

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