מסמך זה תורגם על ידי בינה מלאכותית. לכל אי דיוק, אנא עיין בגרסה האנגלית
NocoBase מספקת מערכת יומנים בעלת ביצועים גבוהים המבוססת על pino. בכל מקום שבו יש לכם גישה ל-context, תוכלו לקבל מופע של יומן דרך ctx.logger כדי לתעד יומנים חשובים במהלך ריצת התוסף או המערכת.
מתודות אלו מתאימות לרמות יומן שונות (מהגבוה לנמוך):
| רמה | מתודה | תיאור |
|---|---|---|
fatal | ctx.logger.fatal() | שגיאות קריטיות, שבדרך כלל גורמות ליציאה מהתוכנית |
error | ctx.logger.error() | יומני שגיאה, המצביעים על כשל בבקשה או בפעולה |
warn | ctx.logger.warn() | מידע אזהרה, המצביע על סיכונים פוטנציאליים או מצבים בלתי צפויים |
info | ctx.logger.info() | מידע כללי על ריצה |
debug | ctx.logger.debug() | מידע לניפוי באגים, לסביבת פיתוח |
trace | ctx.logger.trace() | מידע מעקב מפורט, המשמש בדרך כלל לאבחון מעמיק |
כל פלט יומן הוא בפורמט JSON מובנה, המכיל כברירת מחדל את השדות הבאים:
| שדה | סוג | תיאור |
|---|---|---|
level | number | רמת יומן |
time | number | חותמת זמן (מילישניות) |
pid | number | מזהה תהליך (PID) |
hostname | string | שם מארח (Hostname) |
msg | string | הודעת יומן |
| אחרים | object | מידע הקשר מותאם אישית |
פלט לדוגמה:
ctx.logger מזריק באופן אוטומטי מידע הקשר, כגון התוסף הנוכחי, המודול או מקור הבקשה, מה שמאפשר לעקוב אחר מקור היומנים בצורה מדויקת יותר.
פלט לדוגמה (עם הקשר):
באפשרותכם ליצור מופעי יומן מותאמים אישית בתוספים שלכם, תוך ירושה או הרחבה של הגדרות ברירת המחדל:
יומני צאצא יורשים את התצורה של יומן האב ומצרפים אוטומטית את ההקשר.
רמות היומן של Pino עוקבות אחר הגדרה מספרית מהגבוה לנמוך, כאשר מספרים קטנים יותר מצביעים על עדיפות נמוכה יותר. להלן טבלת היררכיית רמות היומן המלאה:
| שם הרמה | ערך | שם המתודה | תיאור |
|---|---|---|---|
fatal | 60 | logger.fatal() | שגיאות קריטיות, שבדרך כלל גורמות לכך שהתוכנית אינה יכולה להמשיך לפעול |
error | 50 | logger.error() | שגיאות כלליות, המצביעות על כשל בבקשה או חריגה בפעולה |
warn | 40 | logger.warn() | מידע אזהרה, המצביע על סיכונים פוטנציאליים או מצבים בלתי צפויים |
info | 30 | logger.info() | מידע רגיל, המתעד את מצב המערכת או פעולות תקינות |
debug | 20 | logger.debug() | מידע לניפוי באגים, לניתוח בעיות בשלב הפיתוח |
trace | 10 | logger.trace() | מידע מעקב מפורט, המשמש לאבחון מעמיק |
silent | -Infinity | (אין מתודה מקבילה) | כיבוי כל פלט היומנים |
Pino יציג רק יומנים שרמתם גדולה או שווה להגדרת ה-level הנוכחית. לדוגמה, כאשר רמת היומן היא info, יומני debug ו-trace יתעלמו.
השתמשו ביומן ההקשר
השתמשו ב-ctx.logger בהקשרי תוסף, מודל או יישום, כדי לשאת באופן אוטומטי מידע על המקור.
הבחינו בין רמות יומן
error לתיעוד חריגות עסקיותinfo לתיעוד שינויי מצבdebug לתיעוד מידע לניפוי באגים בפיתוחהימנעו מריבוי יומנים
במיוחד ברמות debug ו-trace, מומלץ להפעיל אותן רק בסביבות פיתוח.
השתמשו בנתונים מובנים העבירו פרמטרים של אובייקטים במקום לשרשר מחרוזות; זה מסייע בניתוח ובסינון יומנים.
באמצעות שיטות אלו, מפתחים יכולים לעקוב ביעילות רבה יותר אחר תהליכי ביצוע של תוספים, לפתור בעיות, ולשמור על מערכת יומנים מובנית וניתנת להרחבה.