Drupalcon Szeged 2008

ניהול קבצי trace

פעמים רבות אנו רוצים לדעת אילו שאילתות בדיוק נשלחו על ידי דרופל לבסיס הנתונים. אפשר להפעיל לצורך העניין את מודול devel - מנהל האתר יקבל את השאילתות על המסך בתיבה.

אבל מה אם רוצים לקבל את התוצאות בקובץ טקסט? (לקובץ טקסט יש מספר יתרונות - ניתן להשוות תוצאות של טעינת שני עמודים דומים, לנתח ביצועים, או לבדוק מה בדיוק דרופל עושה כדי להסב נתונים ממערכות אחרות). ובכן, במקרה זה נפעיל את מודול trace.

התוצאות נשמרות בקובץ - שיכול להתנפח למימדים עצומים - ולכן כדאי להפעיל את המודול רק לזמן קצר - נניח לטעינת עמוד אחד. כדי לקבל תוצאות נקיות, מחקו את trace.log לפני טעינת העמוד והעתיקו אותו לקובץ חדש מיד לאחר סיום הטעינה.

cd ~/www/files
mv trace.log trace-upload-of-node-3274.log

את הקבצים שנוצרו ניתן לפתוח בכל text editor נורמלי, כמו vi על יוניקס או או notepad++ על חלונות.

לפעמים trace נותן יותר מדי מידע. מה עושים? אחת הדרכים היא לצמצם את כמות המידע על ידי שימוש ב-VI. לדוגמה - השתמשתי בפקודת ה-VI הבאה כדי לצמצם את נתוני הביצועים ולקבל רק את השאילתות והפונקציות שהפעילו אותן:

:1,$ s/^.*\] d=[0-9]\.[0-9]*s //

בהצלחה