بازگشت به همه مطالب
DIDBAN / BLOG

Sentry در ایران؛ چرا دیدبان جایگزین مطمئن‌تری است؟

محدودیت دسترسی به Sentry برای تیم‌های ایرانی می‌تواند پایش خطا را مختل کند. در این راهنما می‌بینیم چگونه با دیدبان، مانیتورینگ خطا را پایدار و مرحله‌ای به زیرساخت داخلی منتقل کنیم.

۲۰ شهریور ۱۴۰۵ · جواد کاظم زاده

وقتی ابزار پایش خطا خودش در دسترس نیست

Sentry یکی از ابزارهای شناخته‌شده برای ردیابی خطا و مشاهده stack trace است؛ اما برای تیم‌هایی که کاربران، توسعه‌دهندگان یا زیرساختشان داخل ایران قرار دارد، محدودیت و ناپایداری دسترسی می‌تواند به یک ریسک عملیاتی تبدیل شود. در لحظه‌ای که سرویس شما خطا داده، آخرین چیزی که می‌خواهید با آن روبه‌رو شوید دشواری ورود به داشبورد، تأخیر در ارسال رخداد یا وابستگی به مسیرهای ارتباطی ناپایدار است.

پایش خطا باید همیشه در دسترس تیم فنی باشد؛ به‌خصوص هنگام incident، انتشار نسخه جدید یا افزایش ناگهانی خطاها.

محدودیت Sentry چه اثری روی تیم دارد؟

مشکل فقط باز نشدن یک پنل نیست. اختلال در دسترسی به سامانه مانیتورینگ می‌تواند این پیامدها را داشته باشد:

  • دیرتر دیده‌شدن خطاهای مهم در production

  • ناقص ماندن context، breadcrumb و stack trace

  • افزایش زمان تشخیص و رفع مشکل

  • وابستگی تیم عملیات به ابزارهای جانبی برای دسترسی

  • دشوارشدن همکاری بین توسعه‌دهنده، پشتیبانی و مدیر محصول

در چنین شرایطی، داشتن یک راهکار در دسترس و متناسب با نیاز تیم‌های ایرانی یک انتخاب تزئینی نیست؛ بخشی از تاب‌آوری سرویس است.

دیدبان چه چیزی را جایگزین می‌کند؟

دیدبان برای جمع‌آوری و تحلیل خطاهای JavaScript، Browser، React Native و سرویس‌های backend طراحی شده است. رخدادهای مشابه به‌صورت خودکار گروه‌بندی می‌شوند و اطلاعات لازم برای بازسازی مشکل در اختیار تیم قرار می‌گیرد.

در هر خطا می‌توانید اطلاعاتی مانند موارد زیر را ببینید:

  • پیام خطا و stack trace

  • نسخه و محیط اجرای برنامه

  • مشخصات دستگاه و مرورگر

  • breadcrumbهای منتهی به خطا

  • کاربر یا نشست درگیر

  • سورس اصلی با استفاده از Source Map

  • وضعیت CPU و RAM سرور هنگام خطاهای شبکه و backend

هدف این است که تیم به‌جای جست‌وجو بین چند ابزار، از خود رخداد به علت محتمل و اقدام بعدی برسد.

مناسب برای frontend و backend

دیدبان فقط برای خطاهای مرورگر نیست. SDKهای JavaScript و React Native می‌توانند خطاهای سمت کاربر را ارسال کنند و Server Agent نیز وضعیت سرویس‌های Node.js، ASP.NET و سایر backendها را زیر نظر می‌گیرد.

برای خطاهای دسته شبکه یا سرور، یک پنجره کوتاه از وضعیت CPU، RAM و Load نگه‌داری می‌شود. روی نمودار، زمان دقیق وقوع خطا با خط قرمز مشخص است؛ بنابراین می‌توانید ببینید آیا افزایش مصرف منابع هم‌زمان با خطا رخ داده یا علت را باید در کد، دیتابیس یا سرویس خارجی جست‌وجو کرد.

این snapshot فقط هنگام خطا ذخیره می‌شود و تاریخچه دائمی و پرحجم متریک‌ها وارد دیتابیس نمی‌شود.

چند سرور برای هر سازمان

در دیدبان، سرورها به سازمان متصل می‌شوند و هر سازمان متناسب با پلن خود می‌تواند چند سرور اضافه کند. در صفحه «نبض سرورها» بین سرورها جابه‌جا می‌شوید و وضعیت هرکدام را جداگانه می‌بینید.

این مدل برای تیم‌هایی مناسب است که محیط production و staging، چند API، worker یا سرویس مستقل دارند.

مهاجرت از Sentry را مرحله‌ای انجام دهید

برای مهاجرت لازم نیست Sentry را همان روز اول خاموش کنید. مسیر کم‌ریسک‌تر این است:

1. یک پروژه و سازمان در دیدبان بسازید. 2. SDK دیدبان را ابتدا در محیط staging فعال کنید. 3. ثبت خطا، breadcrumb، release و Source Map را بررسی کنید. 4. Agent را روی سرورهای backend نصب کنید. 5. چند روز Sentry و دیدبان را هم‌زمان اجرا و رخدادها را مقایسه کنید. 6. پس از اطمینان، ارسال رخداد به سرویس قبلی را متوقف کنید.

این مهاجرت مرحله‌ای به تیم اجازه می‌دهد بدون ازدست‌دادن پوشش خطا، تنظیمات و هشدارها را با شرایط واقعی محصول هماهنگ کند.

جمع‌بندی

اگر دسترسی به Sentry برای تیم شما پایدار نیست، ادامه وابستگی به آن می‌تواند زمان واکنش به خطا را افزایش دهد. دیدبان یک جایگزین در دسترس برای پایش خطای frontend و backend است که اطلاعات فنی رخداد، وضعیت سرور و ابزارهای تحلیل را در یک محیط جمع می‌کند.

برای شروع، وارد دیدبان شوید، اپلیکیشن خود را بسازید و اولین رخداد آزمایشی را ارسال کنید.