ابرووا
شروع رایگان
☰ فهرست مستندات · عملکرد آدرس‌ها

عملکرد URL

جدول تأخیر برای هر URL، گروه‌بندی‌شده بر اساس URL کامل درخواست، با میانگین، p50، p95، بیشینه و تعداد خطا تا صفحه‌ها و endpointهای کند را دقیق پیدا کنید.

به‌روزرسانی: ۵ آبان ۱۴۰۵

عملکرد URL جدولی از تأخیر هر URL است که درخواست‌ها را بر اساس URL کامل HTTP گروه‌بندی می‌کند (نه بر اساس نام منطقی عملیات). مکمل کارت عملیات (تأخیر API) است: عملیات بر اساس نام عملیات جمع می‌شوند (GET /users/:id)، اما URLها بر اساس چیزی که مرورگر کاربر واقعاً درخواست کرده (/users/4710). وقتی لازم دارید بدانید کدام صفحه‌های مشخص کندند، نه فقط کدام routeها، از این استفاده کنید.

کِی این و کِی عملیات.

برای routeهای بک‌اند (مسیرهای پارامتری) از عملیات استفاده کنید. برای فراخوانی‌های سمت کلاینت در هر صفحه، یا وقتی اصلاً قالب route ندارید (مثل فایل‌های استاتیک و فراخوانی‌های ثالث)، از عملکرد URL استفاده کنید.

داده‌ها شامل چه چیزی است#

هر ردیف این ستون‌ها را دارد:

ستونتوضیح
methodمتد HTTP (GET، POST، PUT، PATCH، DELETE و …)
urlURL کامل درخواست
request_countتعداد کل درخواست‌ها برای این URL در بازه‌ی زمانی انتخاب‌شده
avg_durationمیانگین مدت (ms)؛ تقریبی، اما کنار p95 مفید است
p50میانه؛ تجربه‌ی یک کاربر معمولی
p95دنباله‌ی کند؛ ۵٪ کندترین درخواست‌ها. بیشتر دردسر کاربر همین‌جاست
max_durationکندترین درخواست در این بازه؛ برای پیدا کردن موارد پرت
error_countتعداد پاسخ‌هایی با وضعیت HTTP 400 یا بالاتر

ردیف‌ها بر اساس p95 نزولی مرتب می‌شوند تا کندترین‌ها بالا بیایند.

تفاوت URL و عملیات#

این تفاوت موقع خواندن جدول مهم است:

  • عملیات یک قالب منطقی route است؛ GET /api/users/:id در کارت عملیات فقط یک ردیف است، هر شناسه‌ی کاربری که صدا زده شده باشد.
  • URL همان رشته‌ای است که SDK دیده؛ https://api.example.com/users/4710 و /users/4711 اینجا دو ردیف جدا هستند.

اگر بک‌اند شما URLهای با تنوع بالا دارد (هر شناسه‌ی کاربر یک ردیف جدا)، جدول عملکرد URL خیلی زود شلوغ می‌شود. این عمدی است: به شما می‌گوید کدام کاربر، رکورد یا صفحه‌ی مشخصی کند است. برای مانیتورینگ کلی در سطح route، کارت عملیات را ترجیح دهید.

الگوهای رایجی که باید زیر نظر بگیرید#

یک URL بر دنباله‌ی کند غالب است

یک URL پرتکرار با p95 خیلی بالاتر از بقیه معمولاً یعنی رکورد مشخصی باعث کوئری N+1 یا ردیف داغ شده است

URLهای زیاد با الگوی یکسان

اگر GET /users/4710، /users/4711 و /users/4712 همه کندند، خود route کند است؛ به کارت عملیات بروید

بیشینه‌ی بالا، p95 پایین

یک درخواست فاجعه‌بار در میان ترافیک سالم؛ معمولاً کوئری افسارگسیخته یا cache miss نادر. ارزش بررسی دارد

URLهای فایل استاتیک کندند

اگر URLهای .js / .css / .png مقدار p95 بالایی دارند، نرخ hit در cache مربوط به CDN پایین آمده است. origin shielding را بررسی کنید

بهترین روش‌ها#

همراه با عملیات ببینید

عملیات جواب می‌دهد «آیا این route به‌طور میانگین کند است؟» و عملکرد URL جواب می‌دهد «کندترین درخواست مشخص کدام بود؟»

URLهای پرتنوع را یکدست کنید

اگر هر شناسه‌ی کاربر URL جدای خودش باشد، جدول طولانی می‌شود. وقتی خودتان span می‌فرستید، نام عملیات را به شکل قالب route بدهید (مثلاً GET /users/:id) تا در کارت عملیات جمع شوند؛ http_url همچنان مسیر خام را نگه می‌دارد

با درخواست‌های ناموفق مقایسه کنید

URL کند را در کارت درخواست‌های ناموفق پیدا کنید تا موارد خطای مشخص را ببینید

بیشینه را نشانه‌ی بررسی بدانید

یک بیشینه‌ی ۸ ثانیه یا بیشتر ارزش بررسی دقیق دارد؛ اغلب باگی را نشان می‌دهد که p95 به‌تنهایی نمی‌بیند

حجم × p95 را در نظر بگیرید

URLی با ۱۰٬۰۰۰ درخواست و p95 برابر 300ms بیشتر از URLی با ۵۰ درخواست و p95 برابر 1.5s روی کاربران اثر دارد. هر دو مهم‌اند؛ بر اساس دامنه‌ی اثر وزن بدهید

این صفحه مفید بود؟
گزارش مشکل