שיעור 16 חלק ה\': שלד למצגת¶
Slide 1: Title Slide¶
Main Title: שיעור 16: Logs & Diagnostics
Subtitle: Unified Logging, Console App, Sysdiagnose & Root Cause Analysis
Bullets:
- Logs & Diagnostics
- Unified Logging
- Console Application
- Sysdiagnose
- Root Cause Analysis
[Image Recommendation]: A minimalist abstract vector showing code logs transforming into a clear magnifying glass view.
Presenter Notes: (No specific presenter notes for the title slide)
Slide 2: Unified Logging System¶
Main Title: שיעור 16: Logs & Diagnostics
Subtitle: ה-Unified Logging System: הגישה המודרנית של אפל ללוגים
Bullets:
- זניחת קובצי טקסט פשוטים
- מניעת שחיקת ביצועים
- שמירה על חיי ה-SSD
- לוגים דחוסים ובינאריים
- שימוש ב-Unified Memory
- סינון ראשוני ב-RAM
[Image Recommendation]: A side-by-side comparison illustration showing old flat text files vs a new unified, binary database block.
Presenter Notes: בעבר היינו פותחים קובץ טקסט כדי לחפש שגיאות. היום, כשמק מייצר מיליוני לוגים בשנייה, קובץ טקסט היה שוחק את ה-SSD ותוקע את המערכת. ה-Unified Logging System אוסף את כל הלוגים בפורמט בינארי ודחוס, כשהוא שומר את רוב המידע השוטף ב-RAM המהיר ולא כותב אותו לדיסק. הקובץ הישן system.log הוא כיום נחלת העבר, ועדיף לא להסתמך עליו. כדי לקרוא את הנתונים החדשים נצטרך להשתמש בכלים ייעודיים.
Slide 3: Console Application¶
Main Title: שיעור 16: Logs & Diagnostics
Subtitle: שליטה באפליקציית Console: סינון רעשים ואיתור תקלות
Bullets:
- נתונים בזמן אמת ב-GUI
- חיתוך וסינון (Filtering)
- סינון לפי Process
- סינון לפי Subsystem
- השקטת רעשי מערכת
- גישה ל-Crash Reports
[Image Recommendation]: Screenshot of the Console application actively streaming logs, with the "Pause" button highlighted.
Presenter Notes: הכלי המובנה שלנו לקריאת הלוגים הוא Console. אם תפתחו אותו, תראו 'מפל' נתונים אינסופי שרץ מהר מדי. החוכמה היא לסנן ולהשקיט את הרעש: לעצור את השטף בעזרת Pause, ולהשתמש בשורת החיפוש כדי לסנן לפי תהליך (Process) מסוים. בנוסף, אם תוכנה קורסת, במקום לנחש למה, ה-Console מרכז עבורנו את כל דו"חות הקריסה (Crash Reports / .ips files) במקום אחד נוח לקריאה ולהעברה לצוות פיתוח.
Slide 4: Running Sysdiagnose¶
Main Title: שיעור 16: Logs & Diagnostics
Subtitle: יצירת Sysdiagnose: דיאגנוסטיקה מתקדמת מתוך ה-GUI
Bullets:
- איסוף נתונים עמוק
- לוגים, רשת ותהליכים
- הפעלה מ-Activity Monitor
- ללא שורת קוד
- הליך שאורך מספר דקות
- ארכיון בינארי (.tar.gz)
- מיועד להסלמה (Apple/IT)
[Image Recommendation]: Screenshot of Activity Monitor's menu bar with the "Run System Diagnostics" option visible.
Presenter Notes: כשצוות התמיכה או המהנדסים של אפל לא מצליחים לעלות על הבעיה, הם צריכים את התמונה המלאה. במקום לאסוף קובץ אחרי קובץ, נריץ Sysdiagnose. התהליך לוקח כמה דקות ואוסף כל לוג, הגדרת רשת ומידע חומרה אפשרי למקשה אחת גדולה (קובץ ארכיון של 300 מגה בערך). אפשר לעשות זאת בקלות בממשק דרך האפליקציה Activity Monitor (מתפריט הפעולות). את הקובץ פשוט שולחים להמשך חקירה (Escalation).
Slide 5: Finding the "Smoking Gun"¶
Main Title: שיעור 16: Logs & Diagnostics
Subtitle: חדר הבריחה: איתור שורת הלוג ב-MDM
Bullets:
- שלילת בעיית מערכת
- הוכחת חסימת Firewall
- סינון תהליך
mdmclient - חיפוש "Timeout"
- חיפוש "Network Connection Lost"
- מציאת "האקדח המעשן"
- סגירת הטיקט מול צוות התקשורת
[Image Recommendation]: Screenshot of the Console app with a search filter set to Process: "mdmclient" and Any: "timeout", highlighting an error message line.
Presenter Notes:
תרחיש קלאסי בארגון: ה-MDM לא מצליח לדחוף פקודות והרשת אומרים "הכל פתוח אצלנו". ב-Console יש לנו את הכלי להוכיח! ניצור מסנן שמתמקד רק בתהליך שנקרא mdmclient שמדבר עם ה-MDM ושרתי אפל. נוסיף מילת מפתח כמו Timeout. אם אנחנו מוצאים שורת שגיאה שהחיבור לרשת נכשל – זה "האקדח המעשן" שלנו. הוכחה מתוך הקרביים של מערכת ההפעלה שה-Firewall חוסם אותנו!
Multiple Choice Questions¶
-
מדוע Apple העבירה את ה-macOS להשתמש במערכת Unified Logging במקום לשמור את כל הלוגים כקובצי טקסט רגילים (כמו system.log)? א. כדי שיהיה קל יותר לקרוא אותם ב-Notepad ב. מכיוון שמערכות מודרניות מייצרות מיליוני שורות לוג בשנייה, ושמירת הכל לקובצי טקסט פוגעת בביצועים ושוחקת את כונן ה-SSD (תשובה נכונה) ג. כדי למנוע ממשתמשים לקרוא את קודי המקור של התוכנות ד. כי קובצי טקסט תופסים פחות מדי מקום
-
איזו אפליקציה מובנית מספקת ממשק משתמש גרפי (GUI) נוח לסינון וחיפוש בתוך ה-Unified Logging System? א. Activity Monitor ב. Terminal ג. Console (תשובה נכונה) ד. System Settings
-
מנהל IT מתבקש להעביר למהנדסים של אפל "תמונת מצב מלאה" של המחשב, הכוללת לוגים, נתוני חומרה, ומידע רשת לצרכי חקירה עמוקה. איזה תהליך הוא צריך להפעיל? א. Migration Assistant ב. Erase All Content and Settings ג. Sysdiagnose, שאותו ניתן להפעיל למשל מתוך התפריט של Activity Monitor (תשובה נכונה) ד. First Aid מתוך ה-Disk Utility