הדפסת ה-Alert Log מה-Startup האחרון

בשבוע האחרון לא יצא לי לכתוב בעיקר כי הייתי קצת חולה.

כדי לבדוק Alert log מאז העליה האחרונה של ה-DB (או בכלל, ניתן לקנפג את זה שיהיה מעלייה כלשהי של ה-DB) ניתן להשתמש בסקריפט הבא


#!/bin/csh
set Sid=$1

  set StartupRowNumber = `grep -n 'Starting up ORACLE RDBMS' /app01/oracle/admin/$Sid/bdump/alert_$Sid.log |cut -f 1 -d : |sort -nr |sed -n '1 p'`

  if "$StartupRowNumber" == "" then
     set StartupRowNumber = 1
  endif

  sed -n "${StartupRowNumber},$ p" /app01/oracle/admin/$Sid/bdump/alert_$Sid.log | less

קצת הסברים:

  1. השתמשתי ב-grep כדי למצוא את השורות שבהן יש את ההודעה על התחלת עלייה של ה-DB. השתמשתי באופרטור n- כדי שהוא יציג גם מספרי שורות.
  2. השתמשתי ב-cut כדי לחתוך את מספרי השורות בלבד: d- : מייצר עמודות לפי דלימיטר ":" ואילו f 1 -מציג רק את העמודה הראשונה.
  3. השתמשתי ב-sort כדי למיין בצורה הפוכה את המספרים – מסוף הקובץ להתחלה (nr-).
  4. הצגתי רק את השורה הראשונה (כלומר הפעם האחרונה שהייתה התחלה של העלאה). הסיבה שעשיתי את זה ולא tail היא שרציתי לשלוט במספר ה-startup-ים שאני אציג (בסוף לא ביצעתי).
  5. את התנאי שמתי למקרה שבלוג אין עלייה אחרונה של המערכת (לוג חתוך).
  6. הצגה של השורות מהשורה שמצאתי עד סוף הקובץ ביצעתי באמצעות sed.
0 תגובות

השאירו תגובה

Want to join the discussion?
Feel free to contribute!

השאר תגובה

אתר זו עושה שימוש ב-Akismet כדי לסנן תגובות זבל. פרטים נוספים אודות איך המידע מהתגובה שלך יעובד.