Datadog يقدّم ملايين الإحصاءات المفصّلة حول الأداء باستخدام ProfilingManager
مدّة القراءة: 4 دقائق
من المعروف أنّ تراجُع الأداء يصعب تكراره، ما يجعله عائقًا كبيرًا أمام مطوّري التطبيقات للأجهزة الجوّالة. على الرغم من أنّ إشارات مثل نِسب أخطاء ANR تشير إلى المشاكل التي تحدث في مرحلة الإنتاج، فإنّ تحديد سطر الرمز البرمجي الذي أدّى إلى حدوث مشكلة في الأداء كان يتطلّب في السابق إعادة إنتاج المشكلة يدويًا بشكل شامل أو إجراء تجارب تخمينية قائمة على المحاولة والخطأ.
تعاونت Datadog مع Google للتخفيف من هذا الإحباط من خلال دمج ProfilingManager API (المتاحة على أجهزة Android 15 والإصدارات الأحدث) في منصّتَي "مراقبة المستخدمين الحقيقيين" (RUM) و"التوصيف المستمر". يؤدي هذا الدمج إلى تحويل سير عمل تصحيح الأخطاء، ما يتيح للمطوّرين تجاوز الأعراض السطحية والتمكّن من رصد السبب وراء حدوث مشكلة في الأداء.
من خلال الاستفادة من واجهة برمجة التطبيقات هذه على مستوى النظام، تعالج Datadog الآن ملايين الملفات الشخصية للإنتاج أسبوعيًا في جميع أنحاء العالم وفقًا لبيانات Datadog الداخلية لشهر يونيو 2026. وتوفّر لفِرق الهندسة مستوى جديدًا من الرؤية حول الأداء في الواقع، مع الحفاظ على وقت تشغيل منخفض لمراقبة الأداء على نطاق الإنتاج.
تأثير ProfilingManager
ProfilingManager هي خدمة نظام تم تقديمها في Android 15 تتيح للتطبيقات جمع بيانات الأداء آليًا، مثل عيّنات حزمة التنفيذ وتتبُّعات الحقول ولقطات لأجزاء من الذاكرة، مباشرةً من بيئات التشغيل الفعلي. تغيّر هذه الميزة نموذج الهندسة من إعادة الإنتاج اليدوية التفاعلية إلى التحليل الميداني الاستباقي.
على سبيل المثال، استخدم أحد تطبيقات التواصل من Google عمليات تتبُّع الأداء الميداني للتحقيق في سبب بطء أوقات التشغيل على البارد على الأجهزة الأحدث والأكثر قوة. من خلال التعمّق في عمليات التتبُّع التي تم جمعها من الأجهزة ومقارنتها على أنواع مختلفة من الأجهزة، اكتشف المهندس مشكلة مخفية في الجدولة: كانت خدمة تحويل النص إلى كلام في الخلفية يتم تشغيلها مسبقًا بدون داعٍ أثناء بدء تشغيل التطبيق. وكشفت عمليات التتبُّع أنّ هذه العملية في الخلفية كانت تحتكر نواة وحدة المعالجة المركزية الكبيرة ذات الأداء الأعلى في الجهاز، ما أجبر سلسلة التعليمات الرئيسية للتطبيق على الدخول في وضع السكون أثناء عملية الإحماء المُسبَق.
حلّ مشكلة إمكانية الوصول إلى الرموز البرمجية في Android
قبل تنفيذ ProfilingManager، ركّزت ميزة "مراقبة المستخدمين الحقيقيين" (RUM) في Datadog على صحة التطبيق العالية المستوى والقياس عن بُعد على مستوى الجلسة لتقييم تجربة المستخدم. ويمكن للفِرق الهندسية مراقبة إشارات أداء Android، مثل وقت العرض الأوّلي ونِسب أخطاء ANR وحِمل وحدة المعالجة المركزية والإطارات الثابتة. وامتدت هذه الإحصاءات لتشمل التفاعلات الدقيقة، مثل وقت استجابة الشبكة وأحداث اللمس وتوقُّف سلسلة التعليمات الرئيسية. ومع ذلك، على الرغم من أنّ هذه البيانات سلّطت الضوء بشكل فعّال على مشاكل الأداء التي كانت تظهر في الميدان، إلا أنّها لم توفّر مسارًا واضحًا لتحديد السبب الأساسي لهذه الإخفاقات.
ولحلّ هذه المشكلة، احتاجت Datadog إلى محرّك تحليل قادر على تسجيل بيانات تتبُّع Android مباشرةً من الأجهزة في مرحلة الإنتاج بأقل تأثير ممكن في الأداء. بعد تقييم الأساليب البديلة، مثل كتابة معالج تتبُّع خاص بهم باستخدام واجهات برمجة التطبيقات لتصحيح أخطاء Android، اختار الفريق ProfilingManager لأنّه الحلّ الأكثر فعالية من بين خيارات تحليل الأداء التي تم تقييمها، كما أنّه ينقل عبء قرارات أخذ العينات إلى نظام التشغيل.
تتيح ProfilingManager مجموعة واسعة من طرق جمع البيانات، بما في ذلك تتبُّع وحدة المعالجة المركزية (CPU)، وأخذ عيّنات من حزمة التنفيذ، وتحليل الذاكرة من خلال لقطات لأجزاء من الذاكرة في Java ولقطات لعناصر متعدّدة في الذاكرة الأصلية. وتتيح للمطوّرين تحليل إصدارات الإنتاج وتحميل ملفات التتبّع إلى مساحة تخزين خارجية ومراجعتها في واجهة مستخدم محلّل تتبّع Perfetto. بصفتها مقدّم خدمة SaaS، تحمّل Datadog هذه الملفات الشخصية التي تم جمعها من خلال حزمة تطوير البرامج (SDK) وتعرضها وتحلّلها، ما يوفّر نظرة موحّدة على حالة التطبيق.
من خلال تجميع بيانات القياس عن بُعد العالية الدقة ضمن واجهة برمجة تطبيقات موحّدة لإمكانية تتبّع البيانات، تتيح واجهة ProfilingManager لشركة Datadog وعملائها مراقبة تراجُع أداء Android المعقّد والتحقيق فيه ومعالجته بشكل استباقي من خلال المزايا الفنية الرئيسية التالية:
- بيانات تشخيص الجلسات الدقيقة: تعمل واجهة ProfilingManager على تحسين إمكانية تصحيح الأخطاء من خلال توفير بيانات تتبُّع مباشرة على مستوى نظام التشغيل، ما يتيح التغلّب على تحديات الرؤية والمواءمة التي تظهر عادةً في التسجيل المخصّص مع خدمات النظام. للاطّلاع على مزيد من التفاصيل، يمكن للمطوّرين تنزيل عمليات التتبّع هذه من Datadog لإجراء مزيد من التحقيق في أدوات العرض المرئي، مثل واجهة مستخدم Perfetto.
- مشغّلات القياس عن بُعد المبرمَجة: من خلال الاستفادة من أحداث النظام الأصلية لبدء تسجيلات التتبّع في نقاط التحسين الرئيسية، يقلّل Datadog من الحاجة إلى إنشاء منطق مخصّص لجمع البيانات. على الرغم من أنّ عملية الطرح الأولية تركّز على إشارة APP_FULLY_DRAWN، هناك خطط لتوسيع نطاق إمكانية تتبّع البيانات لتشمل عوامل تشغيل ANR وOOM وCOLD_START.
- لقطات تتبُّع استباقية: من خلال التفاعل مباشرةً مع خدمة Perfetto على مستوى النظام (المتتبَّعة)، تستخدم واجهة ProfilingManager نموذج تسجيل استباقي في الخلفية مصمّمًا لرصد المشاكل غير المتوقّعة. يضمن ذلك حصول المطوّرين على تصوّر دقيق للأحداث التي تؤدي إلى حدوث قيمة شاذة في الأداء، ما يوفّر مستوى من الإحصاءات يتجاوز ما يمكن الحصول عليه من خلال قياس حالة التطبيق اليدوي.
- رصد المشاكل على نطاق واسع: بإمكان Datadog تجميع بيانات القياس عن بُعد من جميع عملائها حول العالم للكشف عن حالات التراجع التي تظهر فقط في إعدادات أجهزة فريدة وبيئات شبكة متغيّرة.
- استقرار الموارد الذي يفرضه النظام: تستفيد واجهة برمجة التطبيقات من جمع بيانات تتبُّع العينات لضمان عدم ملاحظة التأثيرات في الأداء وتجربة المستخدم.
- عناصر التحكّم في البيانات على الجهاز: تستبعد واجهة ProfilingManager المعلومات غير ذات الصلة من العمليات الأخرى على الجهاز قبل تسليم الملف الشخصي إلى التطبيق، ما يقلّل من أحجام الملفات ويضمن توفير البيانات ذات الصلة بعمليات التطبيق فقط.
معالجة ملايين الملفات الشخصية أسبوعيًا لتحسين التطبيقات الواقعية
تطلّب دمج واجهة برمجة تطبيقات لإنشاء الملفات الشخصية على مستوى النظام في حزمة تطوير برامج (SDK) عالمية للمراقبة حلّ تحديات البنية الأساسية. بما أنّ ProfilingManager ينشئ تتبُّعات تفصيلية للأداء، كان على فريق هندسة Datadog إنشاء مسار قادر على تحليل هذه الملفات الشخصية على جانب الخادم على نطاق واسع. بالإضافة إلى جمع الملفات الشخصية، تؤكد Datadog أيضًا على أهمية الموازنة بين معدل تكرار أخذ العينات وجمع بيانات كافية لإنشاء إحصاءات مفيدة حول تطبيقك. تعتمد Datadog على الحدّ الأقصى المضمّن لمعدّل نقل البيانات في ProfilingManager كإجراء وقائي مهم لضمان الاستقرار، ما يمنع طلبات القياس عن بُعد المفرطة من إثقال كاهل أجهزة المستخدمين.
على مدار أشهر، كان الفريق يحلّل تطبيق Datadog الأصلي على Android وعددًا من تطبيقات المستخدمين في مرحلة مبكرة، ويجمع ملايين الملفات الشخصية لضمان تجربة إطلاق سريعة وخالية من الأخطاء وتحسين خوارزميات رصد الأداء. واليوم، يمكن دمج الإصدار النهائي بسلاسة على مجموعة متنوعة من أجهزة Android.
الخاتمة
من خلال دمج ProfilingManager API في Android، نجحت Datadog في سدّ فجوة الرؤية بين أنظمة الخلفية وتطبيقات عملاء الأجهزة الجوّالة لعملائها. من خلال معالجة ملايين الملفات الشخصية أسبوعيًا بأقل قدر من استهلاك موارد الجهاز، تزوّد Datadog مطوّري برامج Android بالإحصاءات اللازمة على مستوى الرموز البرمجية لتشخيص أخطاء الأداء المعقّدة على الفور، ما يساعد المطوّرين في إنشاء تطبيقات أكثر سلاسة وتحسين مؤشرات أداء تطبيقاتهم في "متجر Google Play". لاستخدام ProfilingManager API مباشرةً في إطار عمل تتبُّع الأداء، يُرجى الاطّلاع على المستندات.
في المستقبل، تهدف Datadog إلى جعل بيانات تحليل أداء Android مدخلاً من الدرجة الأولى لوكلاء الترميز من أجل حلّ مشاكل الأداء بشكل مستقل، ما يساهم في إغلاق حلقة الملاحظات بين الرصد والمعالجة. تعمل Datadog على إتاحة ميزة تحليل أداء Android على نطاق واسع للمطوّرين.
لبدء استخدام ميزة Datadog Real User Monitoring المستندة إلى ProfilingManager، انتقِل إلى Datadog Mobile Real User Monitoring.
-
دراسات الحالةKarrot هو تطبيق سوق تجاري على مستوى منطقة محلية صغيرة، يعتمد على المجتمع، ويعمل بنظام الند للند، ويتيح للمستخدمين المعتمدين بيع السلع وشرائها وتبادلها مع بعضهم البعض. منذ إطلاق المنصة في كوريا الجنوبية في عام 2015، توسّعت في الأسواق العالمية، وجذبت أكثر من 43 مليون مستخدم مسجّل.
Thomas Ezan, Tracy Agyemang • مدّة القراءة: دقيقتان -
دراسات الحالةتتطلّب تطبيقات إثبات الهوية للخدمات المصرفية وتسجيل شريحة SIM التقاط صور واضحة وعالية الدقة للوجه من أجل رصد عمليات الانتحال والتزييف العميق. يواجه مطوّرو تطبيقات الكاميرا على Android تحديًا شائعًا يتمثل في التقاط لقطات واضحة بما يكفي لإجراء عمليات التحقّق من الحيوية ومكافحة الانتحال، بدون أن يؤدي ذلك إلى تعطُّل الأجهزة ذات الذاكرة المنخفضة
Donovan McMurray • مدّة القراءة: 4 دقائق -
دراسات الحالةGrab هو التطبيق الفائق الرائد في جنوب شرق آسيا، ويقدّم خدمات التوصيل والتنقّل والخدمات المالية لملايين المستخدمين في ثمانية بلدان من خلال تطبيق واحد.
Ajesh Pai, Nguyen Van Minh, Tracy Agyemang • مدّة القراءة: 5 دقائق
يمكنك الحصول على آخر الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.