תיעוד עקבות של שיחות במערכת

בדף הזה מוסבר איך להשתמש במעקב אחר קריאות למערכת כדי לאבחן מגבלות של ארגז חול של קונטיינר. אנחנו מניחים שיש לכם היכרות עם מעקב אחר קריאות למערכת, ועם שימוש בכלים כמו strace או dtruss. אם אתם לא מכירים את המושג 'מעקב אחר קריאות מערכת', כדאי להמשיך רק אחרי שפניתם Cloud de Confiance לתמיכה עם פרטי הבעיה Cloud de Confiance וקיבלתם הזמנה מצוות התמיכה לעקוב אחר קריאות המערכת.

ארגז החול של הקונטיינר לא תומך בכל קריאות המערכת שנתמכות ב-Linux. אתם יכולים להשתמש בכלים למעקב אחר קריאות למערכת, כמו strace (Linux) או dtruss (macOS), כדי לבדוק את הקריאות למערכת שהאפליקציה מבצעת, וכך לקבוע אילו קריאות למערכת לא נתמכות על ידי ארגז החול.

שימוש ב-strace (Linux)

אם אתם מריצים את הקוד ב-Linux, צריך להתקין ולהפעיל את strace:

sudo apt-get install strace

מריצים את האפליקציה עם strace על ידי הוספת strace -f לפני ההפעלה הרגילה, כאשר -f מציין מעקב אחרי כל השרשורים של הצאצא. לדוגמה, אם בדרך כלל מפעילים את האפליקציה באמצעות ./main, אפשר להפעיל אותה באמצעות strace על ידי הפעלת /usr/bin/strace -f ./main.

צפייה ביומנים שמוחזרים על ידי strace

יומני המערכת מ-strace נראים כך:

דוגמה ליומני קריאות מערכת שנוצרו על ידי הכלי strace

שימוש ב-dtruss (macOS)

אם אתם מריצים את הקוד ב-macOS, אתם יכולים להשתמש ב-dtruss על ידי הוספת dtruss -a לפני ההפעלה הרגילה משורת הפקודה, לדוגמה:

sudo dtruss -a ./main

כדי לעיין במסמכי העזרה, משתמשים בפקודה man dtruss או נכנסים לאחד מהאתרים של dtrace/drusss.