פרוטוקול תוכנת ניפוי הבאגים
פרוטוקול תוכנת ניפוי הבאגים של PHP 3 היא מבוססת-שורות. לכל שורה יש סוג משתנה, ומספר שורות מתחברות לתוך הודעה. כל הודעה מתחילה עם סוג שורה start ומסתיימת עם סוג שורה end. PHP 3 יכול לשלוח שורות להודעות שונות בו-זמנית.
לשורה יש את התבנית הבאה:
<div dir="ltr"> date time host(pid) type: message-data </div>
- date
- תאריך בתבנית ISO 8601 (yyyy-mm-dd)
- time
- שעה הכוללת מיקרו-שניות: hh:mm:uuuuuu
- host
- כתובת DNS או כתובת IP של שרת המארח היכן שגיאת הסקריפט נוצרה.
- pid
- PID (process id) של ה- host השייך לתהליך סקריפט ה- PHP 3 אשר ייצר את שגיאה זאת.
- type
-
הסוג של השורה. אומרת לתוכנה המקבלת באיזה שיטה המידע הבא צריך לטופל.
סוגי שורות תוכנת ניפוי השגיאות שם משמעות start אומרת לתוכנה המקבלת שהודעת ניפוי השגיאות מתחילה כאן. התוכן של ה- data יהיה סוג הודעת השגיאה, הרשום להלן. message הודעת השגיאה של PHP 3. location שם הקובת ומספר השורה היכן שהשגיאה התרחשה. שורת ה- location הראשונה תמיד תכיל מיקום מלא של מערכת הקבצים. data יכיל file:line. תמיד תהיה שורת location אחרי message ואחרי כל function. frames מספר Frames בזיכרון המחסנית. אם ישנם ארבעה Frames, צפה למידע לגבי ארבעת השלבים של הפונקציות ששומשו. אם אף שורת "frames" נתונה, העומק הצפוי אמור להיות 0. (השגיאה התרחשה בשלב העליון). function השם של הפונקציה היכן שהשגיאה התרחשה. יחזור לכל שלב במחסנית הזיכרון של הפונקציה. end אומרת לתוכנה המקבלת שהודעה ניפוי השגיאות הסתיימה כאן. - data
- שורת מידע.
תוכנת ניפוי השגיאות | השגיאות הפנימיות של PHP 3 |
---|---|
warning | E_WARNING |
error | E_ERROR |
parse | E_PARSE |
notice | E_NOTICE |
core-error | E_CORE_ERROR |
core-warning | E_CORE_WARNING |
unknown | (any other) |
Example#1 דוגמא להודעת שגיעה של תוכנת ניפוי הבאגים
<div dir="ltr"> 1998-04-05 23:27:400966 lucifer.guardian.no(20481) start: notice 1998-04-05 23:27:400966 lucifer.guardian.no(20481) message: Uninitialized variable 1998-04-05 23:27:400966 lucifer.guardian.no(20481) location: (null):7 1998-04-05 23:27:400966 lucifer.guardian.no(20481) frames: 1 1998-04-05 23:27:400966 lucifer.guardian.no(20481) function: display 1998-04-05 23:27:400966 lucifer.guardian.no(20481) location: /home/ssb/public_html/test.php3:10 1998-04-05 23:27:400966 lucifer.guardian.no(20481) end: notice </div>