معرفی سرویس Sentry
مقدمه
Sentry یک ابزار کدباز جهت ردیابی خطا (Error Tracking) است که به شما این امکان را میدهد تا سریع، پیوسته و با کارایی بالا، خطاهای احتمالی اپ خود را ردیابی و رفع نمایید. سرویس سنتری همروش برای تمامی کاربران از طریق کنسول همروش قابل دسترسی است.
امکانات Sentry
ردیابی خطا
سرویس Sentry با قابلیت جمعآوری خطاهای برنامهها به توسعهدهنده کمک میکند قبل از نارضایتی کاربران از مشکل مطلع شده و آن را رفع کند. همچنین سنتری دارای قابلیت فیلتر کردن و جداسازی خطاها و ارسال دادههای اضافه به همراه خطا میباشد این ویژگی باعث میشود که از ارسال خطاهای بی اهمیت جلوگیری شود و بتوانید اطلاعاتی مانند "خطا برای کدام کاربر رخ داده" را دریافت کنید.
داشبوردها
داشبوردها در سنتری به سازمان شما قابلیت مصورسازی خطاها و تراکنشها را میدهد. شما میتوانید گراف های سفارشی مطابق با نیازهای خود بسازید برای مثال تغییرات در خطاها با ارائه هر نسخه جدید، کیفیت نسخه طی زمان، مشکلات کاربران یا هر چیزی که سنتری جمعآوری کرده است.
Debugging
فرایند Debugging در برنامهای که در محیط Production در حال اجراست، در صورت ندانستن ریشه خطا، میتواند بسیار پیچیده شود. با کمک قابلیت جمعآوری stack trace خطاها و نشان دادن مراحل اجرا تا نقطهی بروز خطا به راحتی میتوانید دلیل اصلی مشکلات و خطاها را تشخیص دهید. سنتری به شما دید کاملی از اینکه چه چیزی برای کاربران شما مشکل ایجاد کرده میدهد.
سوالات متداول (FAQ)
منظور از event چیست؟
همروش پلن های سرویس سنتری را بر اساس تعداد event هایی که کاربر دریافت میکند، ارائه میدهد. برای مثال در پلن Team میتوانید ۵۰,۰۰۰ event در ماه و ۷۰ event در ساعت (صرف نظر از پیوست ها یا هر چیزی که به همراه event ارسال میشود) دریافت کنید. منظور از event اطلاعات و دیتایی است که از سمت اپلیکیشن یا کاربر به سنتری ارسال میشود. event های ارسالی به سنتری به دو دستهی error و transaction تقسیم میشوند:
Error
تعریف خطا بسته به پلتفرم مورد نظر متغیر است اما بطور کلی سنتری رخداد هایی از قبیل exception و unhandled rejections را error شناسایی میکند. میتوانید خطا های دریافتی خود را از بخش Issues مشاهده و مدیریت کنید. سنتری error هایی را که در بخش های یکسان کد رخ داده اند جمع آوری میکند و بر اساس تعداد خطاها، زمان و... در دسته های مختلف issue طبقه بندی میشوند.
Transaction
قابلیت Perfomance monitoring سنتری به شما اجازه میدهد زمان صرف شده برای یک عملیات مشخص مانند لود شدن یک صفحه یا انجام شدن تسک های ناهمگام را صرف نظر از خطاهای احتمالی در کد اندازه بگیرید. این ویژگی باعث میشود bottleneck های موجود در stack نرم افزاری خود را شناسایی و برای بهبود آنها اقدام کنید.
بصورت کلی در صورت پیاده سازی این قابلیت، به ازای تمامی عملیات های موجود در کد این قابلیت اجرا میشود. برای ارسال تعدادی مشخص از این نوع event به سنتری میتوانید متغیر tracesSampleRate
را تعریف کنید. مقدار مجاز برای تعریف این متغیر بین بازهی 0.0
تا 1.0
میتواند تعریف شود. برای مثال اگر مقدار تعریف شده 1.0
باشد، نتیجهی تمام transaction های موجود در سورس کد به سنتری ارسال و ذخیره میشود. درصورت وجود تعداد درخواست بالا، این کار میتواند به راحتی مقدار محدودیت پلن شما را برای ارسال event به سنتری را پر کند و باعث عدم ذخیره event های بعدی شود. میتوانید با توجه به تعداد درخواست ها و event های خود متغیر tracesSampleRate
را تعریف کنید تا با این محدودیت مواجه نشوید.
پس از پر شدن محدودیت سنتری چه اتفاقی میافتد؟
پس از رسیدن به حد پلن خود در تعداد ایونتها، سنتری ایونتهای شما را ذخیره نمیکند و تاثیر نمیدهد و به کاربر Status Code 429 برمیگرداند. برای حل این موضوع میتوانید تعداد ایونتهای ارسالی را کاهش دهید یا پلن خود را ارتقاء دهید. همچنین برای مشاهده وضعیت دریافت و ارسال event های سنتری خود به بخش Stats سنتری سازمان خود مراجعه کنید. در این بخش میتوانید نمای کلی event های ارسالی موفقیت آمیز و ناموفق بر اساس نوع event و به تفکیک پروژه، بازه زمانی و... آنها مشاهده کنید.