توفّر Datadog ملايين الإحصاءات التفصيلية حول الأداء باستخدام ProfilingManager
مدّة القراءة: 4 دقائق
من المعروف أنّ أخطاء الأداء يصعب إعادة إنتاجها، ما يجعلها عائقًا كبيرًا أمام مطوّري التطبيقات على الأجهزة الجوّالة. على الرغم من أنّ إشارات مثل معدّلات أخطاء ANR تشير إلى المشاكل التي تحدث في الإصدار العلني، كان تحديد سطر الرمز البرمجي المحدّد الذي أدّى إلى مشكلة في الأداء يتطلّب في السابق إعادة إنتاج يدوية شاملة أو تجربة تخمينية قائمة على التجربة والخطأ.
تعاونت Datadog مع Google للحدّ من هذا الإزعاج من خلال دمج واجهة برمجة التطبيقات ProfilingManager (المتاحة على أجهزة Android 15 والإصدارات الأحدث) في منصتَي "مراقبة تجربة المستخدم الحقيقية" (RUM) و"التوصيف المستمر". يؤدي هذا الدمج إلى تغيير سير عمل تصحيح الأخطاء، ما يتيح للمطوّرين تجاوز الأعراض السطحية والتمكّن من رصد سبب حدوث مشكلة في الأداء.
من خلال الاستفادة من واجهة برمجة التطبيقات هذه على مستوى النظام، تعالج Datadog الآن ملايين ملفات الإنتاج الشخصية أسبوعيًا في جميع أنحاء العالم وفقًا لبيانات Datadog الداخلية لشهر يونيو 2026. توفّر هذه الأداة لفِرق الهندسة مستوى جديدًا من إمكانية الاطّلاع على الأداء في العالم الحقيقي، مع الحفاظ على الحد الأدنى من الحمل الزائد لوقت التشغيل اللازم لمراقبة الأداء على مستوى الإنتاج.
تأثير ProfilingManager
ProfilingManager هي خدمة تابعة لنظام التشغيل تم طرحها في Android 15 تتيح للتطبيقات جمع بيانات الأداء آليًا، مثل عيّنات حزمة التنفيذ وعمليات تتبُّع الحقول ولقطات لأجزاء من الذاكرة مباشرةً من بيئات التشغيل الفعلي. تغيّر هذه الإمكانية نموذج الهندسة من إعادة الإنتاج اليدوي التفاعلي إلى التحليل الاستباقي للمشاكل الميدانية.
على سبيل المثال، استخدم أحد تطبيقات التواصل من Google عمليات تتبُّع ميدانية للتحقيق في سبب بطء أوقات التشغيل على البارد على أجهزة أحدث وأكثر فعالية. من خلال تحليل عمليات التتبُّع التي تم جمعها ميدانيًا ومقارنتها على مستوى أنواع الأجهزة المختلفة، اكتشف المهندس مشكلة خفية في الجدولة: كان يتم إجراء عملية الإحماء المسبق لخدمة تحويل النص إلى كلام التي تعمل في الخلفية بدون داعٍ أثناء بدء تشغيل التطبيق. كشفت عمليات التتبُّع أنّ هذه العملية التي تعمل في الخلفية كانت تستخدم بشكل حصري أكبر نوى وحدة المعالجة المركزية وأعلاها أداءً، ما أدّى إلى إيقاف مؤقت لسلسلة التعليمات البرمجية الرئيسية للتطبيق أثناء عملية التسخين المُسبَق.
حلّ مشكلة إمكانية الوصول إلى الرموز البرمجية في Android
قبل تنفيذ ProfilingManager، ركّزت ميزة "مراقبة تجربة المستخدم الحقيقية" (RUM) من Datadog على حالة التطبيق العامة وقياس بيانات الاستخدام على مستوى الجلسة لتقييم رحلة المستخدم. يمكن لفِرق الهندسة مراقبة إشارات أداء Android، مثل وقت العرض الأوّلي ونِسب أخطاء ANR وحِمل وحدة المعالجة المركزية واللقطات المجمدة. وقد امتدّت هذه الإحصاءات لتشمل التفاعلات الدقيقة، مثل وقت استجابة الشبكة وأحداث اللمس وتعليق سلسلة التعليمات الرئيسية. ومع ذلك، على الرغم من أنّ هذه البيانات سلّطت الضوء بفعالية على المشاكل التي تسبّبت في حدوث اختناقات في الأداء، لم تقدّم أي مسار واضح لتحديد السبب الجذري لهذه الأعطال.
ولحلّ هذه المشكلة، احتاجت Datadog إلى محرّك إنشاء ملفات تعريف قادر على تسجيل عمليات تتبُّع Android مباشرةً من الأجهزة في مرحلة الإنتاج بأقل تأثير في الأداء. بعد تقييم طرق بديلة، مثل كتابة معالج تتبُّع خاص باستخدام واجهات برمجة تطبيقات تصحيح الأخطاء في Android، اختار الفريق ProfilingManager لأنّه الحلّ الأفضل أداءً من بين خيارات إنشاء الملفات التي قيّمها، كما أنّه يقلّل من الحمل الزائد لقرارات أخذ العيّنات إلى نظام التشغيل.
تتيح أداة ProfilingManager مجموعة كبيرة من طرق جمع البيانات، بما في ذلك عمليات تتبُّع وحدة المعالجة المركزية وأخذ عيّنات من حزمة التنفيذ وتحليل الذاكرة من خلال لقطات لأجزاء من ذاكرة Java وملفات تعريف الذاكرة الأصلية. تتيح هذه المكتبة للمطوّرين إنشاء ملفات تعريف للإصدارات المخصّصة للإنتاج، وتحميل ملفات التتبُّع إلى وحدة تخزين خارجية، ومراجعتها في واجهة مستخدم أداة تحليل عمليات التتبُّع في Perfetto. بصفتها مقدّم خدمة SaaS، تحمّل Datadog هذه الملفات الشخصية التي يتم جمعها من خلال حزمة تطوير البرامج (SDK) وتعرضها بصريًا وتحلّلها، ما يوفّر عرضًا موحّدًا لحالة التطبيق.
من خلال تجميع بيانات القياس عن بُعد عالية الدقة في واجهة برمجة تطبيقات موحَّدة لإمكانية تتبّع البيانات، تتيح أداة ProfilingManager لشركة Datadog وعملائها إمكانية رصد المشاكل المعقّدة في أداء Android والتحقيق فيها ومعالجتها بشكل استباقي من خلال المزايا الفنية الرئيسية التالية:
- بيانات تشخيص دقيقة للجلسات: تعمل أداة ProfilingManager على تحسين إمكانية تصحيح الأخطاء من خلال توفير بيانات تتبُّع مباشرة على مستوى نظام التشغيل، ما يحلّ المشاكل المتعلّقة بالرؤية والمواءمة التي تحدث عادةً عند تسجيل البيانات المخصّصة باستخدام خدمات النظام. لمزيد من التفاصيل، يمكن للمطوّرين تنزيل عمليات التتبُّع هذه من Datadog للتحقيق بشكل أكبر في أدوات العرض المرئي، مثل واجهة مستخدم Perfetto.
- مشغّلات القياس عن بُعد المبرمَجة: من خلال الاستفادة من أحداث النظام الأصلية لبدء تسجيلات التتبُّع في نقاط التحسين الرئيسية، تقلّل Datadog من الحاجة إلى إنشاء منطق جمع مخصّص. في حين يركّز الطرح الأوّلي على الإشارة APP_FULLY_DRAWN، هناك بالفعل خطط لتوسيع نطاق إمكانية المراقبة هذه لتشمل أخطاء ANR وأخطاء OOM ومشغّلات COLD_START.
- لقطات التتبُّع الاستباقية: من خلال التفاعل مباشرةً مع خدمة Perfetto على مستوى النظام (التي تم تتبُّعها)، تستخدم ProfilingManager نموذج تسجيل استباقي في الخلفية مصمّمًا لرصد المشاكل غير المتوقّعة. يضمن ذلك حصول المطوّرين على عرض مرئي دقيق للأحداث التي أدّت إلى حدوث خلل في الأداء، ما يوفّر مستوى من الإحصاءات يتجاوز ما يمكن الحصول عليه من خلال القياس اليدوي.
- رصد المشاكل على نطاق واسع: تستطيع Datadog تجميع بيانات القياس عن بُعد من قاعدة عملاء Datadog العالمية لرصد المشاكل التي لا تظهر إلا في إعدادات الأجهزة الفريدة وبيئات الشبكات المتغيرة.
- ثبات الموارد الذي يفرضه النظام: تستفيد واجهة برمجة التطبيقات من جمع آثار العيّنات لضمان عدم ملاحظة أي تأثيرات في الأداء وتجربة المستخدم.
- عناصر التحكّم في البيانات على الجهاز فقط: تستبعد ProfilingManager المعلومات غير ذات الصلة من العمليات الأخرى على الجهاز قبل تسليم الملف إلى التطبيق، ما يقلّل من أحجام الملفات ويضمن توفير البيانات ذات الصلة فقط بعمليات التطبيق.
معالجة الملايين من الملفات الشخصية أسبوعيًا لتحسين التطبيقات الواقعية
تطلّب دمج واجهة برمجة تطبيقات لتحديد الأداء على مستوى النظام في حزمة تطوير برامج (SDK) عالمية للرصد حلّ تحديات البنية الأساسية. بما أنّ ProfilingManager ينشئ عمليات تتبُّع أداء مفصّلة للغاية، كان على فريق الهندسة في Datadog إنشاء سلسلة من الإجراءات قادرة على تحليل هذه الملفات الشخصية على مستوى الخادم وعلى نطاق واسع. بالإضافة إلى جمع الملفات الشخصية، تؤكّد Datadog أيضًا على أهمية تحقيق التوازن بين معدّل أخذ العيّنات وجمع بيانات كافية لإنشاء إحصاءات مفيدة حول تطبيقك. تعتمد Datadog على ميزة الحدّ من عدد مرات الاستخدام المضمّنة في ProfilingManager كإجراء وقائي مهم لتحقيق الثبات، ما يمنع طلبات القياس عن بُعد المفرطة من إرهاق أجهزة المستخدمين.
وقد عمل الفريق على تحليل تطبيق Android الأصلي الخاص بـ Datadog وعدد من تطبيقات المستخدمين الأوائل لعدة أشهر، وجمع ملايين الملفات الشخصية لضمان تجربة إطلاق سريعة وخالية من الأخطاء وتحسين خوارزميات رصد الأداء. واليوم، يمكن توسيع نطاق الدمج في مرحلة الإنتاج بسلاسة ليشمل مجموعة متنوعة من أجهزة Android.
الخاتمة
من خلال دمج واجهة برمجة التطبيقات ProfilingManager في Android، تمكّنت Datadog من سدّ فجوة نطاق ظهور العلامة التجارية بين أنظمة الخلفية وتطبيقات الأجهزة الجوّالة لعملائها. من خلال معالجة ملايين الملفات الشخصية أسبوعيًا مع الحد الأدنى من الحمل الزائد على الجهاز، تزوّد Datadog مطوّري تطبيقات Android بالإحصاءات على مستوى الرمز البرمجي اللازمة لتشخيص أخطاء الأداء المعقّدة على الفور، ما يساعد المطوّرين في إنشاء تطبيقات أكثر سلاسة وتحسين مؤشرات أداء تطبيقاتهم في "متجر Google Play". لدمج واجهة برمجة التطبيقات ProfilingManager مباشرةً في إطار عمل مراقبة الأداء، اطّلِع على المستندات.
في المستقبل، تهدف Datadog إلى جعل بيانات تحديد المشاكل في Android إدخالاً أساسيًا لوكلاء الترميز من أجل حلّ المشاكل المتعلقة بأداء التطبيق بشكلٍ مستقل، ما يؤدي إلى إغلاق حلقة الملاحظات بين رصد المشاكل وإصلاحها. تعمل Datadog على إتاحة إمكانية إنشاء ملفات تعريف Android للمطوّرين على نطاق واسع.
لبدء استخدام ميزة "مراقبة تجربة المستخدم الحقيقية" من Datadog المستندة إلى ProfilingManager، يُرجى الانتقال إلى ميزة "مراقبة تجربة المستخدم الحقيقية" على الأجهزة الجوّالة من Datadog.
-
دراسات الحالةKarrot هو تطبيق سوق محلي للغاية يعتمد على المجتمع ويتيح للمستخدمين شراء السلع وبيعها وتبادلها مع مستخدمين آخرين تم التحقّق من حساباتهم. منذ إطلاق المنصة في كوريا الجنوبية عام 2015، توسّعت لتشمل الأسواق العالمية، وبلغ عدد المستخدمين المسجّلين فيها أكثر من 43 مليون مستخدم.
Thomas Ezan, Tracy Agyemang • مدّة القراءة: دقيقتان -
دراسات الحالةأنشأ الفريق قاعدة رموز برمجية لواجهة مستخدم متوافقة مع الذكاء الاصطناعي أصغر بنسبة% 50 من عملية التنفيذ الأصلية، مع تحقيق انخفاض بنسبة% 35 في وقت تنفيذ وكيل الذكاء الاصطناعي، وانخفاض بنسبة% 32 في عدد عمليات تبادل المعلومات بين المهندس والوكيل، وانخفاض بنسبة% 33 في تكلفة الرموز المميزة.
Pavlo Stavytskyi, Rebecca Franks • 11 دقيقة قراءة -
دراسات الحالةWhatsApp هي أكبر منصة مراسلة في العالم، ويستخدمها مليارات الأشخاص حول العالم. وهي أداة التواصل التلقائية للأشخاص في مختلف المناطق، إذ تربط المستخدمين من خلال الرسائل الخاصة والموثوقة والآمنة.
Niharika Arora, Tracy Agyemang, Mayank Jain • مدّة القراءة: 8 دقائق
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.