غالبًا ما تدمج تقارير تجمّد Mac بعد الاستيقاظ ثلاثة أعطال في شكوى واحدة. قد يتحرك المؤشر بينما يتجاهل عميل VPN النقرات، وقد يعمل العميل بينما تنتهي مهلة جلسة بعيدة واحدة، أو قد يتوقف سطح المكتب كله عن تلقي الإدخال. كل واحد من هذه يحتاج أدلة مختلفة، والدقيقة الأولى بعد التجمّد تحدد أيها أمامك. التخمين الخاطئ يوجّه كل خطوة لاحقة في الاتجاه الخاطئ.

ما الذي توقف عن الإجابة، وما الذي توقف عن الانتظار فقط

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

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

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

خط زمني يمكنك الدفاع عنه غدًا

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

pmset -g log | grep -i -E 'wake|sleep'
log show --last 15m --predicate 'process == "<client-process>"' --style compact

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

اختر الالتقاط الذي يطابق العَرَض

يوثّق Apple ثلاثة عمليات التقاط في دليل تشخيص Activity Monitor، وكل منها يجيب عن سؤال مختلف. يراقب Sample Process عملية واحدة مختارة لثلاث ثوانٍ، ويستهدف spindump تطبيقًا توقف عن الاستجابة وعلى وشك إنهائه قسرًا، ويجمع System Diagnostics سجلات النظام في حزمة.

اختر بناءً على ما لاحظته لا على العادة. العميل الذي يعمل لكنه يسيء التصرف يحصل على sample، يُلتقط بـ sample <pid> 3 -file ~/Desktop/sample.txt أو من قائمة الترس. التطبيق الذي يدور إلى ما لا نهاية ويجب قتله يحصل على بند Spindump من القائمة نفسها. المشكلة التي تشمل العميل والنظام تحصل على sudo sysdiagnose -f ~/Desktop. التقط العينة قبل الإنهاء القسري إن أمكن، لأن الإنهاء يدمّر بالضبط الحالة التي أردت فحصها، وسمِّ الملف باسم الحدث والوقت لا باسم تخمينك للسبب.

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

عندما لا يتحرك المؤشر نفسه

الواجهة الميتة تغيّر ترتيب العمليات. لا يمكنك أخذ عينة من عملية أو تشغيل استعلام من صدفة لا تجيب، لذا الهدف الأول هو الاستعادة والثاني هو السجل. إعادة التشغيل القسرية هي أحيانًا المخرج الوحيد، وهي أيضًا اللحظة التي تختفي فيها أنفع التفاصيل. دوّن الوقت والنوافذ التي كانت مفتوحة وما إذا كانت قائمة الشبكة تُظهر اتصالًا قبل إعادة التشغيل؛ فهذه الملاحظات تنجو من إعادة الإقلاع وإن لم تنجُ حالة العملية.

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

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

سلّم حدثًا واحدًا، لا مزاجًا

التسليم الذي يحصل على إجراء يسمّي أربعة أشياء: ما توقف عن الاستجابة، ومتى حدث ذلك، وكيف كانت الشبكة في تلك اللحظة، وأي التقاط يغطي النافذة. أضف إصدار العميل وبناء macOS ثم توقف. يمكن لفريق المنصة ومورّد العميل على حد سواء التصرف بناءً على تلك الجملة، ولا يمكن لأي منهما التصرف بناءً على وصف للإحباط. أبقِ السجل في مكان واحد وأضف إليه بدلًا من إعادة رواية القصة كل مرة؛ وإذا غيّر تحديث السلوك، فاذكر أي تحديث، لأن ذلك دليل أيضًا.

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

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

مقالات ذات صلة