שימוש בספריית לוגר: כיצד לכתוב יומני ברובי

שימוש בספריית הכניסה ב- רובי היא דרך קלה לעקוב אחרי שמשהו השתבש בקוד שלך. כשמשהו משתבש, התייחסות מפורטת למה שקרה בדיוק לקראת השגיאה יכולה לחסוך לך שעות באיתור הבאג. ככל שהתוכניות שלך גדלות ומורכבות יותר, ייתכן שתרצה להוסיף דרך לכתוב הודעות יומן. רובי מגיע עם מספר שימושי שיעורים וספריות המכונות הספרייה הסטנדרטית. בין אלה ספריית לוגר, המספקת רישום עדיף וסובב.

שימוש בסיסי

מכיוון שספריית הלוגר מגיעה עם רובי, אין צורך להתקין אבני חן או ספריות אחרות. כדי להתחיל להשתמש בספריית לוגר, פשוט דורשים 'לוגר' וצור אובייקט לוגר חדש. כל ההודעות שייכתבו לאובייקט ה- Logger ייכתבו לקובץ היומן.

#! / usr / bin / env אודם
דורש 'לוגר'
log = Logger.new ('log.txt')
log.debug "קובץ יומן נוצר"

סדרי עדיפויות

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

בדוגמה הקודמת העדיפות הייתה

instagram viewer
לנפות, הפחות חשוב מכל סדר העדיפויות ("לדחות עד שיהיה לך זמן" ברשימת המטלות שלך, אם תרצו). סדר העדיפויות ביומן ההודעות, לפחות מהכי חשוב, הוא כדלקמן: ניפוי באגים, מידע, התראה, שגיאה, וקטלנית. כדי לקבוע את רמת ההודעות שעל לוגר להתעלם ממנה, השתמש ב- רמה תכונה.

#! / usr / bin / env אודם
דורש 'לוגר'
log = Logger.new ('log.txt')
log.level = לוגר:: WARN
log.debug "זה יתעלם"
log.error "לא יתעלם מזה"

אתה יכול ליצור כמה הודעות יומן שרוצים ותוכל לרשום כל דבר קטן וקטנטן שתוכניתך עושה, מה שהופך את סדר העדיפויות למועיל ביותר. כאשר אתה מפעיל את התוכנית שלך, אתה יכול להשאיר את רמת הכניסה על משהו כמו התראה או שגיאה כדי לתפוס את הדברים החשובים. לאחר מכן, כשמשהו משתבש אתה יכול להוריד את רמת הכניסה (או בקוד המקור או באמצעות מתג שורת פקודה) כדי לקבל מידע נוסף.

סיבוב

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

כדי לאפשר סיבוב יומן, העבירו את 'חודשי', 'שבועי' או 'יומי' לבנאי לוגר. לחלופין, אתה יכול להעביר גודל קובץ מקסימלי ומספר קבצים כדי לשמור בסיבוב לבנאי.

#! / usr / bin / env אודם
דורש 'לוגר'
log = Logger.new ('log.txt', 'יומי')
log.debug "ברגע שהיומן הופך לפחות אחד"
log.debug "בן יום, ישתנה אותו ושינוי"
log.debug "ייווצר קובץ log.txt חדש."