Laravel Telescope یک ابزار قدرتمند دیباگ برای لاراول است که به شما اجازه میدهد تمامی درخواستها، خطاها، لاگها، درخواستهای SQL، و بسیاری از اطلاعات دیباگ دیگه رو بهراحتی مشاهده کنید. این ابزار به خصوص برای دیباگ APIها بسیار مفید است، چون شما میتونید درخواستهای API، وضعیتها و پاسخها رو به صورت کاملاً شفاف مشاهده کنید.
🚀 نصب Laravel Telescope
1. نصب پکیج Telescope:
ابتدا باید پکیج Telescope رو نصب کنید. برای این کار، از دستور زیر استفاده کنید:
توجه داشته باشید که Laravel Telescope معمولاً فقط در محیطهای local یا development استفاده میشود، بنابراین پکیج در محیطهای تولیدی نباید نصب شود.
2. انتشار فایلهای تنظیمات:
بعد از نصب، باید فایلهای تنظیمات رو منتشر کنید:
این دستور فایلهای مربوط به migration و config رو منتشر میکنه.
3. اجرای Migrationها:
این دستور جدولهای مورد نیاز Telescope در پایگاه داده رو ایجاد میکنه.
⚙️ پیکربندی Telescope
در فایل config/telescope.php میتونید تنظیمات مختلف Telescope رو پیکربندی کنید. یکی از نکات مهم اینه که میتونید تعیین کنید Telescope در چه محیطهایی فعال باشه (مثلاً فقط در محیط local).
🖥 استفاده از Telescope برای دیباگ API
1. دسترسی به داشبورد Telescope:
برای مشاهده گزارشها و اطلاعات دیباگ، میتونید به داشبورد Telescope برید:
در این داشبورد، شما میتونید موارد زیر رو مشاهده کنید:
-
درخواستهای HTTP و API
-
درخواستهای SQL
-
فایلهای لاگ و خطاها
-
دادههای Cache
-
Jobها و Queues
2. دیباگ درخواستهای API:
زمانی که API شما درخواستهایی رو دریافت میکنه، Telescope این درخواستها رو ثبت میکنه و شما میتونید موارد زیر رو مشاهده کنید:
-
اطلاعات درخواست: از جمله URL، هدرها، و پارامترها
-
بدنه درخواست: شامل هر دادهای که به API ارسال شده
-
زمان پاسخدهی: مدت زمانی که طول کشیده تا درخواست پردازش بشه
-
کد وضعیت پاسخ: مثل 200، 404، 500 و غیره
3. مشاهده درخواستهای SQL:
در صورتیکه API شما درخواستهای SQL به پایگاه داده ارسال میکنه، Telescope به صورت خودکار اونها رو ثبت میکنه و شما میتونید به راحتی تمامی پرسوجوها (queries) که در طول درخواستها اجرا میشن رو مشاهده کنید.
برای مثال، میتونید ببینید که کدام queryها در پاسخ به درخواستهای API اجرا شدهاند و آیا اونها بهینه هستند یا نه.
🧩 ویژگیهای Telescope برای دیباگ API
-
ثبت درخواستها و پاسخها: تمامی درخواستهای HTTP و API بهطور خودکار ثبت میشن.
-
مشاهده لاگها: شما میتونید لاگهای مرتبط با درخواستهای API رو مشاهده کنید.
-
گزارشهای SQL: درخواستهای SQL که در طول درخواستها اجرا میشن، ثبت میشن و شما میتونید بررسی کنید که آیا بهینهسازی نیاز دارند یا نه.
-
حالت real-time: Telescope بهصورت real-time به شما امکان مشاهده و پیگیری درخواستها رو میده.
-
پشتیبانی از Queueها و Jobs: اگر API شما از صفها (Queues) استفاده میکنه، Telescope امکان مشاهده وضعیت Jobها رو هم فراهم میکنه.
💬 مشاهده درخواستهای API در Telescope
برای دیباگ درخواستهای API، کافیست که به داشبورد Telescope برید و قسمت Requests رو باز کنید. در این بخش شما میتونید:
-
تمامی درخواستها رو بر اساس زمان مشاهده کنید.
-
جزئیات هر درخواست رو باز کنید و ببینید که چه اطلاعاتی از درخواست ثبت شده است.
-
اگر درخواستهایی به پایگاه داده انجام شده، میتونید درخواستهای SQL مربوطه رو ببینید.
⚡ مثال از استفاده Telescope برای دیباگ یک درخواست API
فرض کنید یک API دارید که برای ثبت کاربر جدید به شکل زیر عمل میکنه:
زمانی که یک درخواست POST به /register ارسال میشود، Telescope تمام اطلاعات مربوط به این درخواست رو ثبت میکنه:
-
درخواست HTTP: URL، هدرها، پارامترها
-
درخواست SQL: هر پرسوجوی SQL که در طول ثبت کاربر اجرا میشود.
-
پاسخ: کد وضعیت (مثلاً 201 برای موفقیت) و دادههای ارسال شده به کاربر.
📋 جمعبندی
| عمل | دستور |
|---|---|
| نصب Telescope | composer require laravel/telescope --dev |
| انتشار فایلهای تنظیمات | php artisan telescope:install |
| اجرای Migrationها | php artisan migrate |
| مشاهده داشبورد | http://your-app-domain/telescope |
فعالسازی Telescope در .env | TELESCOPE_ENABLED=true |
Telescope یکی از بهترین ابزارها برای دیباگ و مانیتورینگ در لاراول است. اگه خواستی ویژگیهای بیشتری رو برای دیباگ بررسی کنی یا سوالی داشتی، خوشحال میشم کمک کنم! 😎