در این مقاله به نکاتی در مورد Trace کردن کدهای PHP با ابزار Retrace خواهیم پرداخت. trace باگها در کد PHP میتواند بسیار زمانبر باشد. برای یافتن سریع باگها در برنامه PHP میتوانید از ابزارهای Tracing PHP استفاده کنید. بدینمنظور Stackify دو ابزار تحت عنوان Retrace و Prefix ارائه میکند که میتوان از آنها برای trace آنچه در یک درخواست وب (web request) یا یک تراکنش (transaction) صورت میپذیرد؛ استفاده کرد.

ابزار Retrace یک راهحل بسیار مقرون بهصرفه برای نظارت بر کارایی برنامههاست که امکان centralized logging، ردیابی خطاها، متریکهای برنامه، پروفایل کردن کد Code Profiling و رصد اجرای برنامه شما را فراهم میکند.
برای شروع، باید مطمئن شوید که Retrace را بر روی سرور خود نصب کردهاید. اگر در حال حاضر از آن استفاده نمیکنید، بهتر است نسخه آزمایشی رایگان ثبت نام کرده و آنرا امتحان کنید.
اگر Retrace بر روی سرور شما نصب شدهاست، لازم است تا افزونه PHP را فعال کنید تا بتوانید از قابلیتهای این ابزار برای Tracing PHP استفاده کنید. نصب آن تنها به چند دقیقه زمان نیاز دارد. میتوانید این راهنما را مطالعه کنید تا چگونگی نصب Retrace برای PHP را بیاموزید.

ابزار Retrace بهگونهای طراحی شدهاست تا متدهای اصلی در کد شما را بهصورت خودکار trace کند که شامل فریمورکهای استاندارد برنامه و وابستگیهایش است. میدانیم که یافتن و رفع باگها در یک application ، امری پیچیده و خستهکننده است. ابزار Retrace برنامه Profiling سادهای را پیشنهاد میکند که بسیار مطمئن است و قادر است خطاهای کد را شناسایی کند.
برخی از فریم ورکهایی که توسط Retrace پشتیبانی میشود:
راهنمای کاملی از فریمورکهایی که Retrace آنها را پشتیبانی میکند. مثالی از PHP profiling trace که توسط Retrace جمعآوری شدهاست:

ابزار Retrace میتواند به شما در بهبود عملکرد برنامهتان کمک کند.
ابزار Retrace امکان نظارت بر عملکرد برنامه را مهیا میکند که اهمیت کد شما را پر رنگتر میکند. در تصویر ارائه شده، Retrace این امکان را برای شما فراهم میکند تا عملکرد برنامه را بهصورت سریع ببینید. شما میتوانید trace PHP ویژه شناسایی شده، توسط PHP پروفایلر را ببینید.

ترکیبی از Retrace code profiling و لاگهای برنامهی شما، عیبیابی مشکلات پیچیده را بسیار سادهتر میکند. با کمک این ابزار میتوانید از فریمورکهای Monolog یا Log4php برای ارسال تمامی لاگهای برنامهتان به Retrace استفاده کنید. تنظیمات ویژهای برای پلاگینهای هر فریمورک وجود دارد که ممکن است مورد استفاده قرار گیرد و در صفحه Stackify GitHub یافت میشود.
با ابزار Retrace، لاگهای شما در داشبورد App برای برنامه Php قابل مشاهده است. Retrace امکان trace پیشرفته خطاها و centralized logging را فراهم میآورد. در عکس زیر نمونهای از نمایشگر Retrace log ارائه شدهاست.

سایر logging libraries شامل موارد زیر است:
Retrace تمامی کوئریهای SQL، که بههمراه کد شما اجرا میشود را رصد میکند. این شامل تمامی SQL statement ها، سرور پایگاهداده و تعداد رکوردهای متاثر است.
Retrace، داشبوردهایی را برای نشان دادن عملکرد تمامی SQL query ها ایجاد میکند. در بخش نمایشگر Php trace، شما میتوانید queryهای مجزای SQL را ببینید که برای درخواست وب خوانده شدهاند.

ابزار Retrace میتواند بهصورت خودکار exception های ایجاد شده در کدتان را، جمعآوری کند. این کار بهسادگی منجر به شناسایی خطاهایی می شود که بر روی کاربر شما یا عملکرد سیستم شما تاثیر میگذارد.
شما میتوانید خطاها را از طریق فریمورک logging مثل Monolog به Retrace گزارش کنید. توانایی دیدن تمامی خطاها در کدها، trace برنامههای Php را تسهیل میکند.
خطاها ممکن است برای یک برنامه مشخص، یا تمامی برنامهها مشاهده شوند. ابزار Retrace بهویژه برای یافتن خطاهای جدید که دقیقاً پس از استقرار نرمافزارتان بهوقوع میپیوندند؛ مفید است.

تصویر زیر یک نمونه نمایش جزئیات خطا در Retrace است. شما میتوانید URL ,full stack trace ,headers و دیگر اطلاعات مهم را ببینید که اطلاعات بیشتری در خصوص خطایی که رخ داده است؛ ارائه میکند.


نتیجه گیری
ابزارTracing PHP برای پیداکردن سریع باگها و راههایی برای بهبود کد برنامهی شما، بسیار مفید هستند. Retrace ابزاری قدرتمند برای رصد عملکرد برنامههای Php از بالا تا پایین و تا سطح کد است. در این مقاله سعی شد نکاتی را در مورد Trace کردن کدهای Php با ابزار Retrace شرح دهیم که برای برنامهنویسان Php بسیار مفید است.