جستجو برای:
سبد خرید 0
  • صفحه اصلی
  • دوره های آموزشی
    • آموزش کتابخانه Ant Design به سادگی آب خوردن !
    • آموزش ساخت داشبورد حرفه ای با ری اکت !
    • آموزش فریمورک Tailwind CSS به زبان ساده!
    • آموزش HTML و CSS پروژه محور و اصولی !
  • وبلاگ
  • تماس با ما
  • درباره ما
logo-frontendi-150
0
  • خانه
  • دوره ها
  • وبلاگ فِرانت اِندی
  • تماس با ما
ورود / عضویت
  • صفحه اصلی
  • دوره های آموزشی
    • آموزش کتابخانه Ant Design به سادگی آب خوردن !
    • آموزش ساخت داشبورد حرفه ای با ری اکت !
    • آموزش فریمورک Tailwind CSS به زبان ساده!
    • آموزش HTML و CSS پروژه محور و اصولی !
  • وبلاگ
  • تماس با ما
  • درباره ما
ورود / عضویت

وبلاگ

فرانت اندی > وبلاگ فِرانت اِندی > ری اکت > آموزش Sentry در React: ردیابی و مدیریت خطا ها مثل حرفه ای ها!

آموزش Sentry در React: ردیابی و مدیریت خطا ها مثل حرفه ای ها!

25 آبان 1403
ارسال شده توسط احمد احمدنژاد
ری اکت
سنتری در ری اکت - Sentry در ری اکت - Sentry در React - سنتری در React

اگه React Developer هستی حتماً میدونی که خطا ها و باگ ها میتونن مثل یه کابوس باشن! مثلاً کاربر یه کاری میکنه که انتظارشو نداشتی، یا یه اشتباه کوچیک توی کد باعث میشه کل صفحه سفید بشه و چیزی نمایش داده نشه. این جور مواقع، پیدا کردن این خطا ها میتونه زمانبر و سخت باشه. اینجاست که Sentry وارد عمل میشه!

Sentry یه ابزار حرفه ای برای ایشو ترکینگ (Issue Tracking) و مدیریت خطا هاست. این ابزار بهت کمک میکنه خطا هایی که توی اپلیکیشن اتفاق میفتن رو ردیابی، گزارش و حتی تحلیل کنی.
یکی از بهترین ویژگی های Sentry اینه که خیلی راحت میشه توی یه پروژه React استفاده اش کرد. با این ابزار میتونی بفهمی کجا و چرا اپلیکیشنت مشکل داره، بدون این که ساعت ها وقت بذاری و توی کد ها بگردی.

حالا توی این مقاله قراره یاد بگیریم چطور از Sentry در React استفاده کنیم. قدم به قدم جلو میریم و هم تنظیمات اولیه رو توضیح میدیم، هم با امکانات پیشرفته ترش آشنا میشیم. آماده ای؟ پس بزن بریم!

چرا Sentry برای پروژه های React مناسب است؟

قبل از این که بریم سراغ نصب و استفاده از Sentry، بهتره بفهمیم چرا این ابزار انقدر محبوب و مفیده. این چند تا دلیل رو در نظر بگیر:

  1. شناسایی سریع خطا ها:
    Sentry بهت میگه دقیقاً کدوم بخش از کد هات خطا داده. حتی استک ترس (Stack Trace) دقیق خطا رو برات نشون میده.

  2. جزئیات دقیق:
    اطلاعاتی مثل مرورگر کاربر، سیستم عامل، دستگاه و حتی کار هایی که قبل از خطا انجام شده رو برات ثبت میکنه. این جزئیات بهت کمک میکنه راحت تر بفهمی مشکل از کجاست.

  3. پشتیبانی از React:
    Sentry به طور خاص برای فریمورک هایی مثل React بهینه شده. این یعنی خطا ها رو بهتر مدیریت میکنه و نصبش هم سادست!

  4. امکان شخصی سازی:
    میتونی تعیین کنی که کدوم خطا ها گزارش بشن و کدوم ها نادیده گرفته بشن. حتی میشه خطا های خاصی رو اولویت بندی کرد.

آموزش استفاده از Sentry در ری اکت !

حالا بریم سراغ نصب و استفاده از Sentry در React! برای شروع، باید یه اکانت توی سایت سنتری بسازی.

1. ساخت اکانت Sentry

  • وارد سایت Sentry.io شو.
  • یه اکانت بساز و وارد داشبورد بشو.
  • توی داشبورد، یه پروژه جدید بساز و نوعش رو روی React تنظیم کن.

2. نصب Sentry توی پروژه

حالا که پروژه رو توی سایت Sentry ساختی، باید پکیج Sentry رو توی پروژه React ات نصب کنی. برای این کار، از دستور زیر استفاده کن:

				
					npm install @sentry/react @sentry/tracing

				
			

یا اگه از Yarn استفاده میکنی:

				
					yarn add @sentry/react @sentry/tracing

				
			

3. تنظیمات اولیه Sentry

بعد از نصب، باید Sentry رو توی پروژه ات کانفیگ کنی. برای این کار، فایل index.js یا App.js پروژه ات رو باز کن و کد زیر رو اضافه کن:

				
					import * as Sentry from "@sentry/react";
import { Integrations } from "@sentry/tracing";

Sentry.init({
  dsn: "https://examplePublicKey@o0.ingest.sentry.io/0", // این آدرس رو از پنل خودت تو سایت سنتری باید بگیری
  integrations: [new Integrations.BrowserTracing()],
  tracesSampleRate: 1.0, // نسبت نمونه برداری از تریس اکشن ها
});

				
			
  • مقدار dsn رو از داشبورد Sentry بردار و جایگزین کن.
  • tracesSampleRate مشخص میکنه چند درصد از تریس اکشن ها ردیابی بشن. برای محیط توسعه  ( Develop ) میتونی روی 1.0 بذاری.

ردیابی خطا ها

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

1. اضافه کردن Boundary برای خطا ها

گاهی وقت ها یه کامپوننت خاص توی React ممکنه باعث خطا بشه. برای این که خطا های یه بخش از اپلیکیشن رو جداگانه مدیریت کنی، میتونی از Error Boundary استفاده کنی. Sentry این کار رو هم راحت کرده:

				
					import { ErrorBoundary } from "@sentry/react";

function App() {
  return (
    <ErrorBoundary fallback={<p>یه مشکلی پیش اومده!</p>}>
      <MyComponent />
    </ErrorBoundary>
  );
}

				
			
  • حالا اگه خطایی توی MyComponent اتفاق بیفته، به جای این که کل اپلیکیشن از کار بیفته، پیام خطا رو نشون میده و اون رو به Sentry گزارش میکنه.

شخصی سازی گزارش ها

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

				
					Sentry.init({
  dsn: "https://examplePublicKey@o0.ingest.sentry.io/0",
  beforeSend(event, hint) {
    if (event.message.includes("IgnoreThisError")) {
      return null; // این خطا گزارش نمیشه
    }
    return event;
  },
});

				
			

ویژگی های پیشرفته Sentry

  1. Tracing:
    علاوه بر خطا ها، Sentry میتونه عملکرد اپلیکیشن (Performance) رو هم بررسی کنه. مثلاً بفهمی کدوم API ها کند هستن یا کدوم بخش از کدت زمان زیادی میبره.

  2. هشدار ها (Alerts):
    میتونی تنظیم کنی که وقتی یه خطای خاصی اتفاق افتاد، برات ایمیل یا پیام بفرسته.

  3. سازگاری با فریمورک ها:
    Sentry فقط برای React نیست. میتونی توی Node.js، Vue، Angular و خیلی فریمورک های دیگه هم ازش استفاده کنی.

نتیجه گیری

Sentry در ری اکت یه ابزار قدرتمند برای مدیریت خطا ها و بهبود عملکرد اپلیکیشن های React هست. با کمک این ابزار میتونی سریعتر خطا ها رو پیدا کنی و حل کنی.
نصب و استفاده ازش خیلی راحته و امکانات زیادی داره که تجربه کاربری اپلیکیشن رو بهتر میکنه. حالا دیگه وقتشه بری و Sentry رو توی پروژه ات استفاده کنی!

درباره احمد احمدنژاد

من یه برنامه نویس و توسعه دهنده وب هستم که عاشق دنیای صفر و یکم❤️

نوشته‌های بیشتر از احمد احمدنژاد
قبلی دیزاین پترن های ری اکت ! بهترین Design Pattern در ری اکت کدامند ؟!
بعدی شی گرایی چیست و چرا برنامه نویس ها عاشقش هستند؟

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
پیاده سازی و مشاوره فِرانت اِند!

پیاده سازی اصولی و بهینه پروژه های فِرانت اِند در کمترین زمان ممکن 🙂

پیاده سازی و مشاوره

صفحات فِرانت اِندی
  • وبلاگ
  • تماس با ما
  • درباره ما
تماس با ما
  • [email protected]
  • 09102944692
شبکه های اجتماعی
Youtube Instagram Telegram
اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://frontendi.com/?p=14168
مرورگر شما از HTML5 پشتیبانی نمی کند.