یک اسکریپت پایتون بنویسید که با استفاده از ماژول logging پیامهای سطح CRITICAL را ضبط کند و هنگام بروز استثنا، یک پیام CRITICAL به همراه traceback در یک فایل لاگ ذخیره نماید.
3.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:14 0.0
با استفاده از ماژول استاندارد logging پیکربندی را با logging.basicConfig انجام دهید و level را روی logging.CRITICAL قرار دهید و filename را مشخص کنید؛ سپس در بلوک try/except استثناها را گرفته و با logging.critical(..., exc_info=True) یا logger.critical(..., exc_info=True) پیام و traceback را ثبت کنید. برای تست و دیباگ میتوانید از pytest و fixtureهایی مانند caplog برای گرفتن لاگها استفاده کنید و در محیط سرور (DevOps) با tail یا بررسی فایل لاگ مطمئن شوید که فقط پیامهای CRITICAL ذخیره میشوند. نکات: basicConfig باید قبل از اولین فراخوانی لاگ تنظیم شود و اگر از logger سفارشی استفاده میکنید سطح آن را با logger.setLevel(logging.CRITICAL) تنظیم کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای اطمینان از ثبت فقط پیامهای CRITICAL با استفاده از logging، basicConfig را πριν از اولین فراخوانی لاگ پیکربندی کنید و filename را مشخص کنید. اگر از logger سفارشی استفاده میکنید، سطح آن را با logger.setLevel(logging.CRITICAL) تنظیم کنید تا پیامهای با سطوح پایینتر فیلتر شوند. در بلوک try/except از logger.critical('...', exc_info=True) استفاده کنید تا پیام به همراه traceback در فایل لاگ ثبت گردد. برای تست و دیباگ میتوانید از pytest با caplog بهره بگیرید و در محیط سرور با tail کردن فایل لاگ بررسی کنید که فقط پیامهای CRITICAL نوشته میشوند.
گزارش