Performance Monitoring از ردیابیها برای جمعآوری دادههای مربوط به فرآیندهای نظارت شده در برنامه شما استفاده میکند. ردیابی گزارشی است که حاوی دادههای جمعآوری شده بین دو نقطه از زمان در برنامه شما است.
برای همه انواع برنامهها، Performance Monitoring بهطور خودکار برای هر درخواست شبکه صادر شده توسط برنامه شما یک ردیابی جمعآوری میکند که به آن ردیابی درخواست شبکه HTTP/S میگویند. این ردیابی ها معیارهایی را برای زمان بین زمانی که برنامه شما درخواستی به یک نقطه پایانی سرویس ارسال می کند و زمانی که پاسخ از آن نقطه پایانی کامل می شود، جمع آوری می کند. برای هر نقطه پایانی که برنامه شما به آن درخواست میدهد، Performance Monitoring چندین معیار را ثبت میکند:
زمان پاسخ - زمان بین زمانی که درخواست ارسال می شود و زمانی که پاسخ به طور کامل دریافت می شود
اندازه بار پاسخ - اندازه بایت بار شبکه بارگیری شده توسط برنامه
درخواست اندازه بار - اندازه بایت بارگذاری شبکه بارگذاری شده توسط برنامه
میزان موفقیت - درصد پاسخ های موفق (کدهای پاسخ در محدوده 100 - 399) در مقایسه با کل پاسخ ها
میتوانید دادههای این ردیابیها را در زیربرگه درخواستهای شبکه در جدول ردیابی، که در پایین داشبورد عملکرد قرار دارد، مشاهده کنید (در ادامه در این صفحه درباره استفاده از کنسول بیشتر بدانید).
Performance Monitoring به طور خودکار معیارهایی را برای درخواستهای شبکه جمعآوری میکند که از کتابخانههای شبکه زیر استفاده میکنند:
سویفت
- URLSession
- URLConnection
هدف-C
- جلسه NSURLS
- اتصال NSURLC
سفارشی کردن تجمیع داده درخواست شبکه
علاوه بر ابزارهای خارج از جعبه و تجمیع داده ها برای درخواست های شبکه، Performance Monitoring از گزینه های زیر نیز پشتیبانی می کند:
- ردیابی درخواست شبکه ابزار دستی: نظارت خارج از جعبه شامل اکثر درخواستهای شبکه برای برنامه شما میشود. با این حال، ممکن است برخی از درخواستها گزارش نشوند یا ممکن است از کتابخانه دیگری برای درخواستهای شبکه استفاده کنید. در این موارد، میتوانید از API Performance Monitoring برای ابزارسازی دستی ردیابیهای درخواست شبکه سفارشی استفاده کنید.
- دادههای انباشته تحت الگوهای URL سفارشی: اگر نشانیهای اینترنتی خاصی وجود دارد که Firebase با تطبیق الگوی URL خودکار مشتق شدهاش نمیگیرد، میتوانید الگوهای URL سفارشی برای نظارت بر مجموعهای از URLها در طول زمان ایجاد کنید.
- نحوه محاسبه میزان موفقیت را سفارشی کنید: گاهی اوقات یک کد خطا برای نقاط پایانی API خاصی انتظار می رود یا قبلاً در برنامه شما مدیریت می شود. در این موارد، می توانید نحوه محاسبه میزان موفقیت را پیکربندی کنید و میزان موفقیت تماس های شبکه برنامه خود را با دقت بیشتری نظارت کنید.
تجمیع داده ها تحت الگوهای URL
Firebase Performance Monitoring به طور خودکار دادهها را برای درخواستهای شبکه مشابه جمعآوری میکند تا به شما کمک کند روند عملکرد درخواست شبکه خود را درک کنید.
برای هر درخواست، Firebase بررسی میکند که آیا URL درخواست شبکه با الگوی URL مطابقت دارد یا خیر. اگر URL درخواست با الگوی URL مطابقت داشته باشد، Firebase به طور خودکار داده های درخواست را در الگوی URL جمع می کند. Firebase الگوهای URL و داده های جمع آوری شده آنها را در برگه Network در داشبورد عملکرد کنسول Firebase نمایش می دهد.
الگوی URL چیست؟
یک الگوی URL حاوی یک دامنه به اضافه یک الگو است که می تواند با یک مسیر URL مطابقت داشته باشد، به عنوان مثال: example.com/*/animals/**
.
الگوهای URL می توانند شامل بخش های مسیر زیر باشند:
- متن ساده - دقیقاً با یک رشته مطابقت دارد
-
*
- هر رشته ای را در یک بخش مسیر منطبق می کند -
**
- با پسوند مسیر دلخواه مطابقت دارد
الگوهای URL می توانند یکی از این موارد باشند:
- الگوهای مشتق شده از Firebase - به نام الگوهای URL خودکار
- الگوهای تعریف شده توسط کاربر - به نام الگوهای URL سفارشی
به عنوان مثال: هر یک از درخواستهای URL زیر میتواند با الگوی URL مطابقت داشته باشد example.com/*/animals/**
.
-
example.com/singapore/animals
-
example.com/australia/animals/spiders
-
example.com/australia/animals/marsupials/koala.png
دامنه یک الگوی URL همچنین میتواند حاوی *
به عنوان اولین بخش باشد، به عنوان مثال: *.example.com/*/fruits/**
.
Firebase هر درخواست را فقط به یک الگوی URL نگاشت می کند. اگر الگوهای URL سفارشی را پیکربندی کرده اید، Firebase ابتدا سعی می کند URL های درخواست را با آن الگوها مطابقت دهد. اگر Firebase هیچ الگوی URL سفارشی منطبقی پیدا نکرد، یک URL درخواست را با نمایندهترین الگوی URL خودکار مطابقت میدهد. در بخش های زیر درباره الگوهای URL خودکار و سفارشی بیشتر بدانید.
الگوهای URL خودکار
بدون هیچ گونه پیکربندی توسط شما، Performance Monitoring تلاش میکند با تطبیق درخواستهای برنامه شما با الگوهای URL خودکار، آخرین رفتار استفاده برنامه شما را منعکس کند.
تطبیق خودکار الگوی URL چگونه کار می کند؟
Firebase هر درخواست را با نماینده ترین الگوی URL خودکاری که از درخواست های ارسال شده توسط برنامه شما مشتق شده است مطابقت می دهد. البته توجه داشته باشید که Firebase ابتدا سعی می کند URL های درخواست را با هر الگوی URL سفارشی پیکربندی شده مطابقت دهد.
در زیر یک مثال اساسی برای نحوه تلاش Firebase برای مطابقت درخواستها با نمایندهترین الگوی URL خودکار برای برنامه شما آورده شده است.
برنامه شما درخواست های زیادی را به آدرس های اینترنتی ارسال می کند مانند:
-
example.com/germany/animals/bears
-
example.com/germany/animals/birds
-
example.com/germany/cars
Firebase تعیین می کند که
example.com/germany/**
یک الگوی درخواست رایج برای برنامه شما است و آن را به عنوان یک الگوی URL خودکار در پروژه شما اضافه می کند.برای هر درخواست تطبیق جدید با این الگوی URL، Firebase دادههای درخواستها را تحت الگوی URL خودکار
example.com/germany/**
جمعآوری میکند.-
پس از یک هفته، اکثر درخواستهای برنامه شما به
example.com/germany/animals/bears
وexample.com/germany/animals/birds
است. بنابراین، Firebase یک الگوی نشاندهنده URL ازexample.com/germany/animals/**
استخراج میکند.برای هرگونه درخواست تطبیق جدید با این الگوی نشانی اینترنتی جدید، Firebase دادههای درخواستها را فقط تحت الگوی URL جدید جمعآوری میکند. Firebase به جمعآوری دادهها برای درخواستها به
example.com/germany/cars
تحتexample.com/germany/**
ادامه میدهد.با این حال، طی چند هفته آینده، درخواستهای برنامه شما به
example.com/germany/animals/bears
وexample.com/germany/animals/birds
به میزان قابلتوجهی کاهش مییابد. Firebase تشخیص میدهد کهexample.com/germany/animals/**
نماینده آخرین رفتار استفاده برنامه شما نیست، بنابراین Firebase شروع به تطبیق این دو درخواست باexample.com/germany/**
میکند.Firebase دادههای درخواست دیگری را تحت
example.com/germany/animals/**
جمعآوری نمیکند زیرا دیگر نمایندهترین الگوی خودکار URL نیست.
از آنجایی که تطبیق خودکار الگوی URL پویا است، به موارد زیر توجه داشته باشید:
مطابقت ها و داده های جمع آوری شده از درخواست های قبلی تحت تأثیر الگوهای URL جدید قرار نمی گیرند. Firebase دادههای درخواستی را مجدداً جمعآوری نمیکند.
فقط درخواستهای آینده تحت تأثیر الگوهای URL جدید قرار میگیرند. Firebase هر درخواست جدید را به نماینده ترین الگوی URL خودکار نگاشت می کند. البته توجه داشته باشید که Firebase ابتدا سعی می کند URL های درخواست را با هر الگوی URL سفارشی پیکربندی شده مطابقت دهد.
مشاهده الگوهای URL خودکار و داده های آنها
Firebase همه الگوهای URL و دادههای جمعآوری شده آنها را در زیربرگه درخواستهای شبکه در جدول ردیابی، که در پایین داشبورد عملکرد کنسول Firebase قرار دارد، نمایش میدهد.
ممکن است الگوهای URL را با برچسب دسته بندی نشده ببینید. اینها الگوهای URL خودکار "گسترده" هستند که تحت آنها Firebase می تواند داده ها را برای درخواست هایی که با هیچ الگوی URL خاص دیگری مطابقت ندارند جمع آوری کند.
هنگامی که دوره نگهداری داده ها برای داده های جمع آوری شده تحت یک الگوی URL به پایان می رسد، Firebase آن داده ها را از الگوی URL حذف می کند. اگر تمام دادههای جمعآوریشده تحت یک الگوی URL خودکار منقضی شود، Firebase آن الگوی URL را از کنسول Firebase حذف میکند.
الگوهای URL سفارشی
میتوانید الگوهای URL سفارشی ایجاد کنید تا الگوهای URL خاصی را که Firebase با تطبیق الگوی URL خودکار مشتق شدهاش نمیگیرد، نظارت کنید. برای مثال، میتوانید از یک الگوی URL سفارشی برای عیبیابی یک URL خاص یا نظارت بر مجموعه خاصی از URLها در طول زمان استفاده کنید.
برای کسب اطلاعات بیشتر ، از ایجاد الگوهای URL سفارشی دیدن کنید.
داده های عملکرد را ردیابی، مشاهده و فیلتر کنید
برای مشاهده دادههای عملکرد همزمان، مطمئن شوید که برنامه شما از یک نسخه SDK نظارت بر عملکرد استفاده میکند که با پردازش دادههای همزمان سازگار است. درباره دادههای عملکرد همزمان بیشتر بیاموزید .
معیارهای خاص را در داشبورد خود ردیابی کنید
برای اینکه بدانید معیارهای کلیدی شما چگونه ترند هستند، آنها را به تابلوی معیارهای خود در بالای داشبورد عملکرد اضافه کنید. میتوانید با دیدن تغییرات هفته به هفته به سرعت رگرسیونها را شناسایی کنید یا تأیید کنید که تغییرات اخیر در کدتان عملکرد را بهبود میبخشد.
داشبورد نظارت بر عملکرد Firebase" />برای افزودن معیار به تابلوی سنجش خود، این مراحل را دنبال کنید:
- به داشبورد Performance در کنسول Firebase بروید.
- روی یک کارت متریک خالی کلیک کنید، سپس یک معیار موجود را برای افزودن به تابلوی خود انتخاب کنید.
- برای گزینه های بیشتر، به عنوان مثال برای جایگزینی یا حذف یک معیار، روی روی کارت متریک پر شده کلیک کنید.
تابلوی متریک داده های متریک جمع آوری شده را در طول زمان، هم به صورت گرافیکی و هم به صورت درصد تغییر عددی نشان می دهد.
درباره استفاده از داشبورد بیشتر بیاموزید.
مشاهده آثار و داده های آنها
برای مشاهده ردیابیهای خود، به داشبورد عملکرد در کنسول Firebase بروید، به جدول ردیابیها بروید و سپس روی زیربرگه مناسب کلیک کنید. جدول برخی از معیارهای برتر را برای هر ردیابی نشان می دهد، و حتی می توانید لیست را بر اساس درصد تغییر برای یک متریک خاص مرتب کنید.
Performance Monitoring یک صفحه عیبیابی در کنسول Firebase ارائه میکند که تغییرات متریک را برجسته میکند و رسیدگی سریع و به حداقل رساندن تأثیر مشکلات عملکرد بر برنامهها و کاربران را آسان میکند. میتوانید از صفحه عیبیابی زمانی که در مورد مشکلات عملکرد بالقوه، به عنوان مثال، در سناریوهای زیر مطلع شدید، استفاده کنید:
- معیارهای مربوطه را روی داشبورد انتخاب میکنید و متوجه یک دلتای بزرگ میشوید.
- در جدول ردیابی برای نمایش بزرگترین دلتاها در بالا مرتب می کنید و درصد تغییر قابل توجهی را مشاهده می کنید.
- شما یک هشدار ایمیلی دریافت میکنید که شما را از یک مشکل عملکرد مطلع میکند.
از راه های زیر می توانید به صفحه عیب یابی دسترسی پیدا کنید:
- در داشبورد متریک، روی دکمه مشاهده جزئیات متریک کلیک کنید.
- در هر کارت متریک، را انتخاب کنید
- در جدول ردیابی، روی نام ردیابی یا هر مقدار متریک در ردیف مرتبط با آن ردیابی کلیک کنید.
- در یک هشدار ایمیلی، روی بررسی اکنون کلیک کنید.
وقتی روی نام ردیابی در جدول ردیابی کلیک میکنید، میتوانید معیارهای مورد علاقه را بررسی کنید. را کلیک کنید
- بر اساس نسخه برنامه فیلتر کنید تا دادههای مربوط به نسخه قبلی یا آخرین نسخه خود را مشاهده کنید
- بر اساس دستگاه فیلتر کنید تا بدانید دستگاههای قدیمیتر چگونه برنامه شما را مدیریت میکنند
- بر اساس کشور فیلتر کنید تا مطمئن شوید مکان پایگاه داده شما بر منطقه خاصی تأثیر نمی گذارد
درباره مشاهده دادههای ردیابی خود بیشتر بیاموزید.
مراحل بعدی
درباره استفاده از ویژگی ها برای بررسی داده های عملکرد بیشتر بیاموزید.
درباره نحوه ردیابی مشکلات عملکرد در کنسول Firebase بیشتر بدانید.
هشدارهایی را برای درخواستهای شبکه که عملکرد برنامه شما را کاهش میدهند تنظیم کنید . به عنوان مثال، اگر زمان پاسخگویی برای یک الگوی URL خاص از آستانه ای که تعیین کرده اید بیشتر شود، می توانید یک هشدار ایمیل را برای تیم خود پیکربندی کنید.
- گزارشهای مفصلی از جلسات کاربر را مشاهده کنید که در آن میتوانید یک ردیابی خاص را در زمینه جدول زمانی سایر ردیابیهای جمعآوریشده در همان جلسه مشاهده کنید.