-
Notifications
You must be signed in to change notification settings - Fork 0
Logger
ایجاد یک سیستم لوگ که کارایی سیستم رو کاهش نده یک چالش اساسی برای هر سیستمی است. برای همین ما یه مدل ساده لاگ طراحی و پیاده سازی کردیم که بتونه کارایی مناسبی برای معماری ما داشته باشه.
سطوح زیر برای لاگها در نظر گرفته شده است.
const ALL = 1;
const DEBUG = 3;
const INFO = 4;
const PERF = 5;
const EVENT = 6;
const WARN = 7;
const ERROR = 8;
const FATAL = 9;
const OFF = 10;
تعیین سطح لاگ تعیین میکنه که چه لاگهایی باید در نظر گرفته بشه و چه لاگهایی باید دور ریخته بشه. تعیین لاگ در تنظیمها به صورت زیر انجام میشه:
$cfg['log_level']=Pluf_Log::ERROR;
یکی از تکنیکهایی که برای ایجاد لاگ استفاده میشه، تاخیر در لاگ زدن هست. به این ترتیب عمل ذخیره کردن چندین لاگ با هم انجام میشه و کارایی سیستم افزایش پیدا میکنه. خصوصیت زیر برای فعال کردن لاگ تاخیری به کار میرود.
cfg['log_delayed']=true;
زمانی که لاگهای سیستم جمع میشود در نهایت توسط یک نویسنده در مخزن لاگ نوشته میشود. نویسندههای متفاوتی برای لاگها وجود دارد که عباتند از:
- Pluf_Log_File
- Pluf_Log_Remote
هرکدام از نویسندهها تنظیمهای خاص خود را دارند. تعیین نویسنده نیز با تنظیمها به صورت زیر تعیین میشود:
$cfg['log_handler']='Pluf_Log_File';