كيفية استخدام سجلات الأخطاء لاستكشاف مشكلة المستخدم وإصلاحها؟

شكاوى مستخدم من بلجيكا بشأن بطء استجابة موقع Discourse الخاص بي عند النقر. أنا موجود في كاليفورنيا، ولم أتلّقَ أي شكاوى من المستخدمين الآخرين الذين يتواجدون حتى الآن في مينيسوتا وألمانيا وهولندا. تخبرني المستخدمة المعنية أنها تستخدم متصفح Chrome على نظام Windows. وتظهر نتائج اختبار سرعة التحميل والرفع لديها مشابهة لنتائج اختباري عبر موقع speedof.me.

عند زيارة الرابط https://discourse.MY_DOMAIN.com/logs/، أرى أن أحدث إدخال يحمل طابعًا زمنيًا قبل بضع دقائق فقط من إرسال بريدها الإلكتروني. ويقرأ تبويب “المعلومات” الخاص به:

Uncaught [object Object]
Url: https://discourse.MY_DOMAIN.com/assets/ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f787a214b016f58aabc.js
Line: 1
Column: 268124
Window Location: https://discourse.MY_DOMAIN.com/

بينما يكون تبويب “التتبع الخلفي” فارغًا. أما تبويب “البيئة” فيقرأ:

hostname    MY_APP-app
process_id    780
application_version    ab0b0344048e7e7354615286486bf0508c7c2df6
HTTP_HOST    discourse.MY_DOMAIN.com
REQUEST_URI    /logs/report_js_error
REQUEST_METHOD    POST
HTTP_USER_AGENT    Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36
HTTP_ACCEPT    */*
HTTP_REFERER    https://discourse.MY_DOMAIN.com/
HTTP_X_FORWARDED_FOR    IP_ADDRESS_IN_BELGIUM
HTTP_X_REAL_IP    IP_ADDRESS_IN_BELGIUM
time    4:25 am
params    
message    Uncaught [object Object]
url    https://discourse.MY_DOMAIN.com/assets/ember_jquery-1ed3f3559e6f967733b4088aa729ff7039dff2c09c5a5f78
line    1
column    268124
window_location    https://discourse.MY_DOMAIN.com/

كيف يمكنني استخدام هذه المعلومات، أو ما الذي ينبغي عليّ فعله بالإضافة إلى ذلك، لتشخيص مشكلة المستخدمة؟

شكرًا لك.

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

  • أين يستضاف موقعك؟
  • هل تستخدم CloudFlare؟
  • هل تأكدت مما إذا كانت تستخدم شبكة افتراضية خاصة (VPN) أو أي شيء يؤثر على مسار اتصالها بخادمك؟ يمكن أن يساعد تتبع المسار (traceroute) في ذلك.

شكرًا لك على ردك.

  • الموقع مستضاف على AWS، وليس CloudFlare.
  • المستخدم ليس لديه خبرة تقنية كبيرة، لذا أشك في أنها تستخدم VPN، لكن يمكنني السؤال. طلبت منها تسجيل الدخول في الوضع الآمن وإبلاغي عما إذا كان ذلك يحسن أي شيء، لكنها لم ترد بعد (الوقت متأخر حاليًا في أوروبا).
  • هل يمكنك التوصية برابط لـ traceroute الخاص بـ Discourse؟

تتبع المسار (Traceroute) هو أداة سطر أوامر موجودة على نظامي ماك (traceroute) وويندوز (tracert). ستعرض لك المسار الشبكي من جهاز المستخدم إلى خادمك، قفزة تلو الأخرى. لا أعرف أي بدائل جيدة تعتمد على المتصفح؛ فمعظمها يعرض المسار من الخادم بدلاً من العميل.

يمكنك طلب لقطة شاشة للمتصفح للتأكد من عدم وجود إضافات غريبة مثبتة.

هل استبعدت برامج الأمان المحلية؟ فقد رأيتُ في بعض الأحيان إضافات متصفح تابعة لبرامج مكافحة الفيروسات تعمل كوكيل (proxy) للبيانات وقد تسبب مشاكل.

آه. إذن، يمكنني الدخول عبر SSH إلى جهاز Discourse الخاص بنا، وأرى أن traceroute غير مثبت، ويمكنني تشغيل apt install traceroute (يُثبّت الإصدار 2.1.0)، ثم تشغيل traceroute HER_APPARENT_IP_ADDRESS_FROM_DISCOURSE LOGS؟

إذا فعلت ذلك، فستظهر النتيجة التالية.

traceroute to 84.196.9.6 (84.196.9.6), 30 hops max, 60 byte packets
 1  * * *
 2  10.70.134.15 (10.70.134.15)  1.101 ms 10.70.134.35 (10.70.134.35)  1.079 ms 10.70.134.27 (10.70.134.27)  0.988 ms
 3  138.197.251.92 (138.197.251.92)  1.323 ms 138.197.251.94 (138.197.251.94)  1.628 ms 138.197.251.124 (138.197.251.124)  1.206 ms
 4  138.197.251.110 (138.197.251.110)  1.079 ms  1.071 ms 138.197.251.114 (138.197.251.114)  1.056 ms
 5  138.197.244.17 (138.197.244.17)  1.247 ms  1.251 ms 138.197.244.19 (138.197.244.19)  1.112 ms
 6  nyk-b3-link.telia.net (62.115.45.5)  1.866 ms  1.383 ms nyk-b3-link.telia.net (62.115.45.9)  1.331 ms
 7  * * *
 8  ldn-bb3-link.telia.net (62.115.113.21)  82.665 ms  82.486 ms  82.459 ms
 9  adm-bb4-link.telia.net (62.115.134.26)  78.418 ms adm-bb3-link.telia.net (62.115.113.210)  82.951 ms  83.025 ms
10  brx-b3-link.telia.net (62.115.116.191)  82.894 ms brx-b4-link.telia.net (62.115.116.231)  78.732 ms  78.321 ms
11  be-dgb01a-rb1-ae-20-0.aorta.net (213.46.162.13)  82.955 ms  82.970 ms be-zav01a-rb1-ae-21-0.aorta.net (213.46.162.6)  87.143 ms
12  * * *
13  * * *
14  * * *
15  * d54C40906.access.telenet.be (84.196.9.6)  94.362 ms  93.255 ms

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

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

هل المشكلة حديثة؟ فقد حدثت انقطاع كبير في خدمات Level3/CenturyLink اليوم وهذا أثر بالتأكيد على بعض المسارات عبر الأطلسي.

شكرًا لاستجاباتكم المستمرة.

أبلغني مستخدمنا خلال الليل أن تسجيل الدخول عبر الوضع الآمن لـ Discourse قد حل مشكلتها. لقد طلبت منها الآن ما إذا كانت يمكنها المساعدة في تحديد أي من مربعات الاختيار الثلاثة في الوضع الآمن هو الذي ساعد فعليًا.

تستمر تحدياتي في أن تكون الفارق الزمني بيننا، والاختلاف اللغوي، والاختلاف في مستوى الراحة مع التكنولوجيا. سأقوم بتحديث هذا الموضوع إذا/عندما أتعلم المزيد.

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