نحوه استفاده از سرویس ردیابی اشکال داخلی GitLab – CloudSavvy IT


گرافیک نشان‌دهنده نشان‌واره‌های GitLab و Sentry

Sentry یک پلت فرم ردیابی اشکال محبوب است که به شما امکان می دهد در زمان واقعی مشکلات موجود در محیط های تولید خود را مشاهده کنید. ویژگی گزارش اشکال GitLab به شما این امکان را می دهد که گزارش های Sentry را به پلتفرم کنترل منبع بیاورید، و یک نمای متمرکز ارائه می دهد که خطاهای Sentry و مسائل GitLab را ادغام می کند.

این ویژگی در ابتدا بر اساس یکپارچگی با سرویس Sentry موجود بود، یا Sentry.io رسمی یا یک سرور خود میزبان. این با GitLab 14.4 تغییر کرد که یک باطن سبک وزن سازگار با Sentry را به خود GitLab اضافه کرد. دیگر نیازی به نصب Sentry برای دریافت گزارش خطای GitLab ندارید.

در اینجا نحوه شروع کار با Sentry backend داخلی آورده شده است. قبل از اینکه به ادامه مطلب برویم، شایان ذکر است که اگر قبلاً با داشبورد Sentry آشنایی دارید، ممکن است این قابلیت برای شما مناسب نباشد. باطن GitLab یک راه حل انتزاعی است که خطاها را به عنوان یک لیست ساده برجسته می کند. این برای برنامه‌های کوچک‌تر که در آن هزینه‌های سربار مدیریت یک پروژه Sentry جداگانه را نمی‌خواهید، بهتر است.

شروع کنید

یک پروژه جدید در GitLab.com یا سرور GitLab خود ایجاد کنید. به Settings > Monitoring در نوار کناری پروژه خود بروید و سپس بخش ردیابی اشکال را گسترش دهید. چک باکس را در قسمت Enable Error Tracing فعال کنید. مطمئن شوید که دکمه رادیویی «خطای ردیابی پس‌زمینه» روی «GitLab» تنظیم شده است. برای ادامه روی دکمه آبی ذخیره تغییرات کلیک کنید.

صفحه دوباره بارگذاری می شود. اکنون می توانید دوباره بخش Error Tracing را گسترش دهید تا رشته DSN خود را نشان دهید. این URL برای پیکربندی کتابخانه سرویس گیرنده Sentry برای ارسال رویدادها به سرور GitLab استفاده می شود.

پیکربندی مشتری

اکنون می توانید Sentry را به کد خود اضافه کنید. در اینجا یک مثال اساسی از استفاده از کتابخانه رسمی سرویس گیرنده Sentry برای Node.js آورده شده است. شما می توانید بسته را با اجرا نصب کنید npm install @sentry/node. اسناد تمام مشتریان موجود از Sentry در دسترس است.

const sentry = require("@sentry/node");
 
sentry.init({
    dsn: "https://[email protected]/api/v4/error_tracking/collector/1"
});

مقدار DSN را با رشته ای که از رابط کاربری GitLab کپی کرده اید جایگزین کنید. قسمت قبل @ این یک توکن ویژه برای احراز هویت است که امکان دسترسی به سرور GitLab را فراهم می کند. بقیه شامل نقطه پایانی API ردیابی اشکال است که مختص پروژه شما است.

ادغام خود را آزمایش کنید

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

می‌توانید ادغام را با گرفتن دستی رویدادها آزمایش کنید. در اینجا یک مثال از ایجاد یک فایل است Errorمدل:

Sentry.captureException(new Error("Sentry test"));

از نوار کناری پروژه خود در رابط کاربری وب GitLab برای رفتن به صفحه نمایش > صفحه ردیابی خطا استفاده کنید. خطایی که انتخاب کردید باید در لیست ظاهر شود. برای مشاهده گزارش کامل و stack trace روی ورودی آن کلیک کنید.

مشکلات GitLab را می توان از گزارش ها با استفاده از دکمه آبی Create Issue در بالا سمت راست ایجاد کرد. این به شما امکان می دهد تا کار تعمیر را به اعضای تیم اختصاص دهید و بحثی را در مورد مشکل شروع کنید. مشکل پیوندی به گزارش خطا نگه می‌دارد و ردیابی پشته در زیر توضیحات مشکل تعبیه‌شده ظاهر می‌شود.

هنگامی که اشکال زدایی یک مشکل را به پایان رساندید، از صفحه ردیابی اشکال برای علامت گذاری آن به عنوان ثابت استفاده کنید. اگر قصد ندارید به آنها رسیدگی کنید، ممکن است به این دلیل که گذرا بوده اند یا توسط یک مشتری قدیمی ثبت شده اند، می توان مشکلات را نادیده گرفت.

عوامل تعیین کننده

پشتیبان Sentry که در GitLab ادغام شده است در حال حاضر برای موقعیت‌های مقیاس کوچک طراحی شده است که در آن استقرار Sentry بسیار پیچیده یا غیر ضروری دیده می‌شود. پلت فرم Sentry یک سیستم گسترده است که پیکربندی و نگهداری آن زمان می برد. ادغام GitLab یک چک باکس در تنظیمات پروژه شماست اما این سادگی هزینه دارد.

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

همچنین باید بدانید که GitLab هنوز نمی تواند برای گزارش های جدید باگ ایمیل ارسال کند. شما باید به صورت دستی صفحه ردیابی اشکال را نظارت کنید تا از رویدادهای ایجاد شده توسط استقرار شما جلوتر بمانید.

از آنجایی که GitLab ویژگی های اصلی Sentry API را پیاده سازی می کند، با اکثر SDK ها و کتابخانه های مشتری سازگار است. از GitLab 14.5، کار با روبی، جاوا اسکریپت، جاوا و پایتون تاکید شده است. سایر زبان ها یا پشتیبانی جزئی دارند یا در نسخه های بعدی GitLab اضافه خواهند شد.

خلاصه

باطن Sentry GitLab یک راه ساده برای گرفتن گزارش های خطا از برنامه شما و ذخیره آنها به همراه کد شما ارائه می دهد. اگرچه محدودیت‌های فعلی آن را برای همه موارد به جز ساده‌ترین موارد استفاده نامناسب می‌سازد، اما هنوز یک انتخاب قانع‌کننده برای وب‌سایت‌های کوچک و پروژه‌های شخصی است که به پیچیدگی Sentry کامل نیاز ندارند.

باطن داخلی همچنین می تواند هنگام آزمایش ادغام Sentry با کد شما مفید باشد. اگر در حال راه‌اندازی یک کلاینت جدید هستید یا تنظیمات یک کلاینت موجود را تغییر می‌دهید، می‌توانید از سرور GitLab به عنوان یک پشتیبان موقت استفاده کنید تا استقرار Sentry اولیه خود را آلوده نکنید.

مولفه ردیابی اشکال GitLab هنوز در حال توسعه است و قرار است در مراحل بعدی توسعه یابد. این باید به یک گزینه کامل تر تبدیل شود که می تواند جایگزین Sentry مستقل در طیف وسیع تری از محیط ها شود.

رژیم آنلاین دکتر روشن ضمیر https://rdiet.ir/ رژیم کتوژنیک دکتر روشن ضمیر