تخطَّ إلى المحتوى

المفاهيم

التطبيق

تطبيق واحد يطلقه فريقك، كما يعرفه أثر. لكل تطبيق مفاتيح استقبال خاصة به، ترسل حزمة التطوير بأحدها. إلغاء مفتاح يوقف فورًا كل نسخة تستعمله. وحذف تطبيق يحذف مفاتيحه ومشكلاته وأحداثه وإصداراته وأحداث منتجه.

الحدث والمشكلة

الحدث خطأ واحد كما أرسله جهاز واحد. تتجمّع الأحداث في مشكلات بحسب مصدرها، فالخلل الواحد مشكلة واحدة مهما تكرّر. تعرض قائمة المشكلات المفتوحة أولًا، والأحدث في الأعلى.

المشكلة إما مفتوحة أو محلولة أو متجاهلة. والمشكلة المحلولة إذا تكرّرت عادت: تُفتح من جديد، وتظهر على أنها المشكلة نفسها.

العطل والخطأ غير القاتل

العطل حدث يُغلق التطبيق، تسجّله حزمة التطوير وترسله عند التشغيل التالي مع الإصدار الذي تعطّل. أما الخطأ غير القاتل فخطأ نجا منه التطبيق: استثناء التقطته وأبلغت عنه، أو طلب فشل. الاثنان يُجمعان ويُحلّلان بالطريقة نفسها.

الإصدار والبيئة

يحمل كل حدث الإصدار (4.2.0+420) والبيئة (production أو staging) اللذين أرسله بهما تطبيقك. وتعرف كل مشكلة أول إصدار ظهرت فيه وآخر إصدار.

التحليل

تحصل كل مشكلة جديدة أو عائدة على تحليل: ما الذي حدث، وأين، وخطة إصلاح خطوة بخطوة جاهزة للّصق في وكيل برمجة. يقول كل تحليل مدى ثقته، ويصرّح حين لا يستطيع الجزم. إنه قراءة نموذج للمكدّس والأحداث، فراجعه قبل أن تعمل به.

أداة التتبّع

GitHub وLinear وJira Cloud وNotion. المشكلة المرسلة إلى أداة تتبّع تبقى حالتها متزامنة في الاتجاهين: أغلق التذكرة فتُحلّ المشكلة، وإن عادت المشكلة تُفتح التذكرة. وقاعدة الإرسال ترسل المشكلات تلقائيًا حين تبلغ عددًا من الأحداث.

أحداث المنتج

ما يسجّله تطبيقك بـ ErrorReporting.track، الأحدث أولًا، في أحداث المنتج. ابحث فيها باسم الحدث تمامًا.

الاستخدام

تحدّد خطتك عدد الأخطاء المحسوبة كل شهر. وما بعد الحد يُسقط ويُحسب، لا بصمت: تعرض شاشة الاستخدام كل ما أُسقط. ويبدأ العدّ من جديد كل شهر.