Performance Monitoring ردیابیهایی را جمعآوری میکند تا به شما در نظارت بر عملکرد برنامهتان کمک کند. ردیابی، گزارشی از دادههای عملکرد است که بین دو نقطه زمانی در برنامه شما ثبت میشود.
شما میتوانید ردیابیهای خودتان را برای نظارت بر دادههای عملکرد مرتبط با کد خاصی در برنامهتان ایجاد کنید. با ردیابی کد سفارشی ، میتوانید مدت زمان لازم برای تکمیل یک کار خاص یا مجموعهای از کارها توسط برنامهتان، مثلاً بارگذاری مجموعهای از تصاویر یا پرسوجو از پایگاه دادهتان را اندازهگیری کنید.
معیار پیشفرض برای ردیابی کد سفارشی، «مدت زمان» آن (زمان بین نقاط شروع و پایان ردیابی) است، اما میتوانید معیارهای سفارشی نیز اضافه کنید.
در کد خود، ابتدا و انتهای یک ردیابی کد سفارشی را با استفاده از APIهای ارائه شده توسط Performance Monitoring SDK تعریف میکنید.برای برنامههای اندروید، میتوانید متدهای خاص را با استفاده از حاشیهنویسی @AddTrace نیز رصد کنید.ردیابی کدهای سفارشی را میتوان در هر زمانی پس از ایجاد آنها آغاز کرد و از نظر thread safe هستند.
از آنجایی که معیار پیشفرض جمعآوریشده برای این ردپاها «مدت زمان» است، گاهی اوقات به آنها «ردپاهای مدت زمان» نیز گفته میشود.
میتوانید دادههای این ردها را در زیربرگه ردهای سفارشی از جدول ردها، که در پایین داشبورد عملکرد قرار دارد، مشاهده کنید (در ادامه این صفحه درباره استفاده از کنسول بیشتر بدانید).
ویژگیهای پیشفرض، ویژگیهای سفارشی و معیارهای سفارشی
برای ردیابی کدهای سفارشی، Performance Monitoring به طور خودکار ویژگیهای پیشفرض (فرادادههای رایج مانند نسخه برنامه، کشور، دستگاه و غیره) را ثبت میکند تا بتوانید دادهها را برای ردیابی در کنسول Firebase فیلتر کنید. همچنین میتوانید ویژگیهای سفارشی (مانند سطح بازی یا ویژگیهای کاربر) را اضافه و نظارت کنید.شما میتوانید یک ردیابی کد سفارشی را برای ثبت معیارهای سفارشی برای رویدادهای مرتبط با عملکرد که در محدوده ردیابی رخ میدهند، پیکربندی کنید. به عنوان مثال، میتوانید یک معیار سفارشی برای تعداد موفقیتها و شکستهای حافظه پنهان یا تعداد دفعاتی که رابط کاربری برای یک دوره زمانی قابل توجه پاسخگو نیست، ایجاد کنید.
ویژگیهای سفارشی و معیارهای سفارشی در کنسول Firebase در کنار ویژگیهای پیشفرض و معیارهای پیشفرض برای ردیابی نمایش داده میشوند.
اضافه کردن رد کدهای سفارشی
از API ردیابی Performance Monitoring برای اضافه کردن ردیابی کدهای سفارشی جهت نظارت بر کد برنامه خاص استفاده کنید.
به موارد زیر توجه کنید:
- یک برنامه میتواند چندین رد کد سفارشی داشته باشد.
- بیش از یک ردیابی کد سفارشی میتواند همزمان اجرا شود.
- نامهای مربوط به ردیابی کدهای سفارشی باید الزامات زیر را داشته باشند: بدون فاصلهی خالی در ابتدا یا انتهای نام، بدون کاراکتر زیرخط (
_) در ابتدای نام، و حداکثر طول ۱۰۰ کاراکتر. - ردیابی کدهای سفارشی از اضافه کردن معیارها و ویژگیهای سفارشی پشتیبانی میکند.
برای شروع و توقف ردیابی کد سفارشی، کدی را که میخواهید ردیابی کنید، با خطوط کدی مشابه موارد زیر بپوشانید (این مثال از نام ردیابی سفارشی test_trace استفاده میکند):
Kotlin
// Import these Performance Monitoring classes at the top of your `.kt` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; val myTrace = Firebase.performance.newTrace("test_trace") myTrace.start() // code that you want to trace myTrace.stop()
Java
// Import these Performance Monitoring classes at the top of your `.java` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.Trace; Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace"); myTrace.start(); // code that you want to trace myTrace.stop();
(اختیاری) نظارت بر متدهای خاص با استفاده از @AddTrace
برنامههای اندروید همچنین از حاشیهنویسی @AddTrace برای ردیابی کدهای سفارشی پشتیبانی میکنند. با استفاده از این ویژگی، ردیابی از ابتدای متد مشخص شده شروع میشود و با اتمام متد، شامل هر چیزی که توسط متد فراخوانی شده باشد، متوقف میشود.
برای مثال، میتوانید یک ردیابی کد سفارشی به نام onCreateTrace ایجاد کنید که هنگام فراخوانی متد onCreate() اجرا شود.
Kotlin
// Import these Performance Monitoring classes at the top of your `.kt` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.AddTrace; // Add the `@AddTrace` annotation above the method you want to trace // the `enabled` argument is optional and defaults to true @AddTrace(name = "onCreateTrace", enabled = true) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) }
Java
// Import these Performance Monitoring classes at the top of your `.java` file import com.google.firebase.perf.FirebasePerformance; import com.google.firebase.perf.metrics.AddTrace; // Add the `@AddTrace` annotation above the method you want to trace @Override @AddTrace(name = "onCreateTrace", enabled = true /* optional */) protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); }
معیارهای سفارشی را به ردیابیهای کد سفارشی اضافه کنید
از API ردیابی Performance Monitoring برای افزودن معیارهای سفارشی به ردیابیهای کد سفارشی استفاده کنید.
به موارد زیر توجه کنید:
- نامهای معیارهای سفارشی باید الزامات زیر را داشته باشند: بدون فاصلهی خالی در ابتدا یا انتهای نام، بدون کاراکتر زیرخط (
_) در ابتدای نام، و حداکثر طول ۱۰۰ کاراکتر. - هر ردیابی کد سفارشی میتواند تا ۳۲ معیار (از جمله معیار پیشفرض مدت زمان ) را ثبت کند.
برای افزودن یک معیار سفارشی، هر بار که رویداد رخ میدهد، یک خط کد مشابه زیر اضافه کنید. برای مثال، این معیار سفارشی، رویدادهای مرتبط با عملکرد که در برنامه شما رخ میدهند، مانند موفقیتها و شکستهای حافظه پنهان (با استفاده از نامهای رویداد مثال item_cache_hit و item_cache_miss و با ضریب افزایشی 1 ) را شمارش میکند.
Kotlin
val myTrace = Firebase.performance.newTrace("test_trace") myTrace.start() // code that you want to trace (and log custom metrics) val item = cache.fetch("item") if (item != null) { myTrace.incrementMetric("item_cache_hit", 1) } else { myTrace.incrementMetric("item_cache_miss", 1) } myTrace.stop()
Java
Trace myTrace = FirebasePerformance.getInstance().newTrace("test_trace"); myTrace.start(); // code that you want to trace (and log custom metrics) Item item = cache.fetch("item"); if (item != null) { myTrace.incrementMetric("item_cache_hit", 1); } else { myTrace.incrementMetric("item_cache_miss", 1); } myTrace.stop();
ایجاد ویژگیهای سفارشی برای ردیابی کدهای سفارشی
از API ردیابی Performance Monitoring برای افزودن ویژگیهای سفارشی به ردیابیهای کد سفارشی استفاده کنید.برای استفاده از ویژگیهای سفارشی، کدی را به برنامه خود اضافه کنید که ویژگی را تعریف میکند و آن را با یک ردیابی کد سفارشی خاص مرتبط میکند. میتوانید ویژگی سفارشی را در هر زمانی بین شروع ردیابی و پایان ردیابی تنظیم کنید.
به موارد زیر توجه کنید:
نامهای مربوط به ویژگیهای سفارشی باید شرایط زیر را داشته باشند:
- بدون فاصلهی خالی در ابتدا یا انتهای کاراکتر، بدون کاراکتر زیرخط (
_) در ابتدای کاراکتر - بدون فاصله
- حداکثر طول ۳۲ کاراکتر است
- کاراکترهای مجاز برای نام عبارتند از
AZ،azو_.
- بدون فاصلهی خالی در ابتدا یا انتهای کاراکتر، بدون کاراکتر زیرخط (
هر ردیابی کد سفارشی میتواند تا ۵ ویژگی سفارشی را ثبت کند.
لطفاً مطمئن شوید که ویژگیهای سفارشی حاوی هیچ اطلاعاتی نیستند که هویت شخصی را برای گوگل مشخص کند.
درباره این دستورالعمل بیشتر بدانید
Kotlin
Firebase.performance.newTrace("test_trace").trace { // Update scenario. putAttribute("experiment", "A") // Reading scenario. val experimentValue = getAttribute("experiment") // Delete scenario. removeAttribute("experiment") // Read attributes. val traceAttributes = this.attributes }
Java
Trace trace = FirebasePerformance.getInstance().newTrace("test_trace"); // Update scenario. trace.putAttribute("experiment", "A"); // Reading scenario. String experimentValue = trace.getAttribute("experiment"); // Delete scenario. trace.removeAttribute("experiment"); // Read attributes. Map<String, String> traceAttributes = trace.getAttributes();
ردیابی، مشاهده و فیلتر کردن دادههای عملکرد
معیارهای خاص را در داشبورد خود پیگیری کنید
برای اطلاع از روند تغییرات معیارهای کلیدی خود، آنها را به تابلوی معیارهای خود در بالای داشبورد عملکرد اضافه کنید. میتوانید با مشاهده تغییرات هفته به هفته، به سرعت رگرسیونها را شناسایی کنید یا تأیید کنید که تغییرات اخیر در کد شما باعث بهبود عملکرد میشوند.
داشبورد نظارت بر عملکرد فایربیس" />برای اضافه کردن یک معیار به جدول معیارهای خود، این مراحل را دنبال کنید:
- به داشبورد Performance در کنسول Firebase بروید.
- روی یک کارت معیار خالی کلیک کنید، سپس یک معیار موجود را برای اضافه کردن به صفحه خود انتخاب کنید.
- برای گزینههای بیشتر، مثلاً برای جایگزینی یا حذف یک معیار، روی روی یک کارت معیار پر شده کلیک کنید.
صفحه معیارها، دادههای معیار جمعآوریشده را در طول زمان، هم به صورت گرافیکی و هم به صورت درصد تغییر عددی، نشان میدهد.
درباره استفاده از داشبورد بیشتر بدانید.
مشاهده ردپاها و دادههای آنها
برای مشاهدهی ردپاهای خود، به داشبورد Performance در کنسول Firebase بروید، به پایین صفحه بروید تا به جدول ردپاها برسید، سپس روی زیربرگهی مربوطه کلیک کنید. جدول، برخی از معیارهای برتر را برای هر ردپا نمایش میدهد و حتی میتوانید لیست را بر اساس درصد تغییر برای یک معیار خاص مرتب کنید.
Performance Monitoring یک صفحه عیبیابی در کنسول Firebase ارائه میدهد که تغییرات معیارها را برجسته میکند و رسیدگی سریع و به حداقل رساندن تأثیر مشکلات عملکرد بر برنامهها و کاربران شما را آسان میکند. میتوانید از صفحه عیبیابی هنگام اطلاع از مشکلات عملکرد بالقوه، به عنوان مثال، در سناریوهای زیر استفاده کنید:
- شما معیارهای مرتبط را در داشبورد انتخاب میکنید و متوجه یک اختلاف بزرگ میشوید.
- در جدول ردپاها، شما مرتبسازی را طوری انجام میدهید که بزرگترین دلتاها در بالا نمایش داده شوند و تغییر درصد قابل توجهی را مشاهده خواهید کرد.
- شما یک هشدار ایمیلی دریافت میکنید که شما را از یک مشکل عملکردی مطلع میکند.
شما میتوانید از طریق روشهای زیر به صفحه رفع مشکلات دسترسی پیدا کنید:
- در داشبورد معیار، روی دکمه مشاهده جزئیات معیار کلیک کنید.
- روی هر کارت متریک، انتخاب کنید
=> مشاهده جزئیات . صفحه عیبیابی اطلاعات مربوط به معیار انتخابی شما را نمایش میدهد. - در جدول ردها، روی نام رد یا هر مقدار معیار در ردیف مرتبط با آن رد کلیک کنید.
- در هشدار ایمیلی، روی «اکنون بررسی کنید» کلیک کنید.
وقتی روی نام یک رد در جدول ردها کلیک میکنید، میتوانید معیارهای مورد علاقه خود را بررسی کنید. روی
دادههای نظارت بر عملکرد Firebase بر اساس ویژگی فیلتر میشوند" />- برای مشاهده اطلاعات مربوط به نسخه قبلی یا آخرین نسخه، بر اساس نسخه برنامه فیلتر کنید
- برای اطلاع از نحوه مدیریت برنامه توسط دستگاههای قدیمیتر، آن را بر اساس دستگاه فیلتر کنید
- بر اساس کشور فیلتر کنید تا مطمئن شوید موقعیت مکانی پایگاه داده شما بر منطقه خاصی تأثیر نمیگذارد
درباره مشاهده دادههای ردپاهایتان بیشتر بدانید.
مراحل بعدی
درباره استفاده از ویژگیها برای بررسی دادههای عملکرد بیشتر بدانید.
درباره نحوه ردیابی مشکلات عملکرد در کنسول Firebase بیشتر بدانید.
برای تغییرات کدی که عملکرد برنامه شما را کاهش میدهند ، هشدار تنظیم کنید . به عنوان مثال، میتوانید یک هشدار ایمیلی برای تیم خود پیکربندی کنید اگر مدت زمان ردیابی یک کد سفارشی خاص از آستانهای که تعیین کردهاید فراتر رود.
- گزارشهای دقیقی از جلسات کاربر مشاهده کنید که در آن میتوانید یک ردپای خاص را در یک چارچوب زمانی از سایر ردپاهای جمعآوریشده در همان جلسه مشاهده کنید.