מרוב עצים לא רואים את היער – הכירו את הפרמטר TRACEFILE_IDENTIFIER
אחד הכלים שלנו ב DBA להבין מה קורה ב session מסוים זה להפעיל trace על אותו ה session ולאחר מכן להסתכל על הקבצים שנוצרו או להריץ עליהם tkprof על מנת שיהיו קריאים יותר.
ה-trace-ים נכתבים לספריית user_dump_dest ככל שאר קבצי ה-trace של ה-server (foreground) processes. ניתן להפעיל trace על session על ידי הרצת הפקודה alter session set sql_trace true או על ידי אחד ה package-ים:
dbms_monitor, dbms_session.
זה לא סוד שאורקל רושם המון קבצי trace בספריות ה dump. זה יתרון גדול על בסיסי הנתונים האחרים מכיוון שהמון מידע נשפך לשם ויכול לעזור לנו להבין מה קורה מתחת למכסה המנוע, אך בגלל הכמות העצומה של הנתונים יש קצת בלאגן (הרבה מאוד קבצים) וגם צריך להקפיד למחוק מדי פעם קבצים על מנת שלא יגמר המקום בדיסק.
שימוש בפרמטר TRACEFILE_IDENTIFIER יכול לעשות לנו את החיים קלים מאוד.
כברירת מחדל, אורקל משתמש בתבנית קבועה על מנת לייצר שמות של קבצי trace. התבנית היא:
<sid>_<process_type>_<pid>.trc
כאשר sid זה ה-instance_name, process_type זה סוג התהליך אשר יצר את הקובץ trace (בדרך ora עבור תהליכי משתמשים) ו-pid הוא מספר התהליך אשר ניתן למצוא ב v$process.spid.
אנו יכולים לתמרן מעט את השם כך שנוסיף עוד מאפיין על מנת שיהיה לנו קל לזהות את הקובץ שניתן בקלות. שימוש בפקודה
alter session set tracefile_identifier='alon';
יוסיף את המחרוזת alon בין מספר התהליך לסיומת הקובץ כך שהתבנית תיראה כעת כך:
<sid>_<process_type>_<pid>_<traceid>.trc
/opt/app/oracle/diag/rdbms/orcl11/orcl11/trace/orcl11_ora_27318.trc
ל-
/opt/app/oracle/diag/rdbms/orcl11/orcl11/trace/orcl11_ora_27318_alon.trc
מיד נוכל גם להבחין בקובץ החדש שנוצר לנו ב user_dump_dest עם המחזורת alon.
דיג trace-ים מוצלח!
נתראה ברשומה הבאה.
Latest posts by אלון שפיגל (see all)
- הקשחת Oracle Listener בעזרת white list - 04/09/2011
- לאן גיביתי את ה transaction log שלי? - 17/04/2011
- מחיקת Login וכל ה-users שלו - 12/04/2011
השאר תגובה: