# مرور راه‌اندازی SDK > https://docs.errora.org/platforms/overview ارورا با پروتکل Sentry سازگار است: **SDK رسمی Sentry** پلتفرم خودتان را نصب می‌کنید، DSN را به پروژهٔ ارورا می‌دهید و بعد همه چیز — خطا، ردیابی، لاگ، بازپخش، پروفایل، متریک، چک‌این کران و بازخورد کاربر — از همان یک اتصال عبور می‌کند. هیچ SDK اختصاصی ارورا وجود ندارد. اگر پلتفرم شما [SDK رسمی Sentry](https://docs.sentry.io/platforms/) دارد، اینجا هم کار می‌کند. ## DSN ```text https://@/ ``` آن را در صفحهٔ پروژه (**پروژه‌ها ← پروژهٔ شما**) می‌بینید، یا از API: `GET /api/v1/organizations/{org_id}/projects/{project_id}/keys`. DSN را در متغیر محیطی نگه دارید، نه داخل کد: ```dotenv SENTRY_DSN=https://a1b2c3…@errora.example.com/6f1e… ``` ## گزینه‌هایی که مهم‌اند | گزینه | چرا لازم است | | --- | --- | | `dsn` | مقصد رویدادها. DSN خالی یعنی SDK خاموش؛ همین راه ساده برای خاموش‌کردن ارورا در تست است. | | `environment` | `production` / `staging` / … — همه‌جا قابل فیلتر است و مانیتور کران وضعیت را به تفکیک محیط نگه می‌دارد. | | `release` | مثل `myapp@1.4.2`. برای [سورس‌مپ](/products/source-maps) لازم است و برای ردیابی بازگشت خطا مفید. | | `traces_sample_rate` | [ردیابی کارایی](/products/performance) را روشن می‌کند. در توسعه `1.0`، در تولید کمتر. | | `profiles_sample_rate` | [پروفایلینگ](/products/profiling) را روشن می‌کند (کسری *از تراکنش‌های نمونه‌برداری‌شده*). | | `replaysSessionSampleRate` | فقط مرورگر — [بازپخش نشست](/products/session-replay) را روشن می‌کند. | | `send_default_pii` | داده‌های کاربر/IP/درخواست را پیوست می‌کند. پیش‌فرض خاموش است؛ آگاهانه روشنش کنید. | | `sample_rate` | نمونه‌برداری خطا در سمت کلاینت (جدا از نرخ نمونه‌برداری پروژه). | | `attach_stacktrace` | به `capture_message`های ساده هم ردپای فراخوانی می‌چسباند. | | `before_send` | آخرین فرصت شما برای پاک‌کردن اطلاعات حساس پیش از خروج داده از پروسه. | ## هر محصول به چه چیزی نیاز دارد | محصول | چه چیزی را روشن کنید | | --- | --- | | [خطاها](/products/issues) | هیچ‌چیز — SDK پس از مقداردهی، استثناهای مدیریت‌نشده را خودش می‌گیرد | | [ردیابی کارایی](/products/performance) | `traces_sample_rate` (یا `traces_sampler`) | | [لاگ‌ها](/products/logs) | یکپارچه‌سازی لاگ SDK (`enable_logs` / `_experiments: { enableLogs: true }`) | | [بازپخش نشست](/products/session-replay) | `replayIntegration()` و نرخ‌های نمونه‌برداری (مرورگر) | | [پروفایلینگ](/products/profiling) | `profiles_sample_rate` یا پروفایلینگ پیوسته | | [متریک](/products/metrics) | API متریک SDK یا ارسال خطوط statsd | | [مانیتور کران](/products/crons) | دکوریتور مانیتور یا `captureCheckIn`، یا حتی `curl` ساده | | [بازخورد کاربران](/products/user-feedback) | `feedbackIntegration()`، `showReportDialog()` یا API گزارش | | [رصد هوش مصنوعی](/products/insights) | یکپارچه‌سازی AI-agents / MCP در SDK (اسپن‌های `gen_ai.*`) | | [سورس‌مپ](/products/source-maps) | بارگذاری فایل‌ها به ازای هر نسخه از CI | ## SDK چطور با ارورا حرف می‌زند SDKهای امروزی **پاکت** را به این آدرس می‌فرستند: ```text POST https:///api//envelope/ ``` کلاینت‌های قدیمی‌تر یا مینیمال از نقطهٔ قدیمی خطا استفاده می‌کنند: ```text POST https:///api//store/ ``` احراز هویت با کلید عمومی DSN انجام می‌شود: در هدر `X-Sentry-Auth`، به‌صورت `?sentry_key=` (SDKهای مرورگری) یا در فیلد `dsn` سربرگ پاکت (پاکت‌های تونل‌شده). بدنهٔ فشرده‌شده با gzip هم پذیرفته می‌شود. ارورا به‌محض صف‌شدن داده، پاسخ `202 Accepted` می‌دهد. مرجع کامل — از جمله سه نقطهٔ غیر SDK (چک‌این کران، گزارش CSP و فرم گزارش خطا) — در [API دریافت رویداد](/api/ingest) آمده است. ## بررسی اتصال 1. یک خطای عمدی بفرستید (`sentry_sdk.capture_exception(Exception("smoke test"))`). 2. در لاگ خروجی برنامه دنبال پاسخ `202` بگردید (یا گزینهٔ `debug` را در SDK روشن کنید). 3. صفحهٔ **خطاها** را در پنل باز کنید. اگر SDK پاسخ `401` گرفت، کلید عمومی اشتباه است یا کلید غیرفعال شده. پاسخ `429` یعنی به سقف نرخ خورده‌اید یا موجودی کیف پول تمام شده است. ## راهنمای هر پلتفرم - [جاوااسکریپت (مرورگر)](/platforms/javascript) - [Node.js](/platforms/node) - [پایتون (جنگو، فلسک، سلری)](/platforms/python) - [PHP و لاراول](/platforms/php-laravel) - [Go](/platforms/go) - [سایر پلتفرم‌ها](/platforms/other)