نحن بصدد إنهاء API داخل المواقع. راجع مستند حالة إنهاء API داخل المواقع للحصول على التفاصيل، والتعرف على كيفية الترحيل إلى API السحابة من الجيل القادم.

سجلات الدعم

بالإضافة إلى استخدام support العقدة لاسترداد معلومات الدعم لديك، يمكنك أيضًا استرداد سجلات Docker وسجلات AWS ومعرفات طلب HTTP لاستكشاف المشكلات وإصلاحها.

يتناول هذا المستند ما يلي:

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

استرداد سجلات Docker

استخدام WADebug (مفضل)

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

  wadebug logs --send

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

استخدام Docker

إذا لم تتمكن من استخدام أداة WADebug، فيمكنك استخدام الأمر docker logs لاسترداد السجلات من كل حاوية على حدة. على سبيل المثال، لاسترداد السجلات من حاوية waweb، قم بتشغيل الأمر التالي:

docker logs <container id of waweb> >> waweb.log

يمكنك استخدام خيارات الأمر docker logs المتنوعة لتقييد حجم ملفات التسجيل. على سبيل المثال، للحصول على آخر 1000 سطر فقط من السجلات في حاوية waweb، قم بتشغيل الأمر التالي:

docker logs <container id of waweb> --tail 1000 >> waweb.log

للحصول على سجلات الحاوية waweb بين مدة زمنية محددة، قم بتشغيل الأمر باستخدام الخيارين --since و--until، على سبيل المثال:

docker logs <container id of waweb> --since 2020-01-20T20:00:00Z --until 2020-01-21T08:00:00Z >> waweb.log

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

ملاحظة: كل سجلات الحاوية تكون بالمنطقة الزمنية "توقيت جرينتش". يمكنك تمرير الطوابع الزمنية بتوقيت جرينتش إلى المعلمتين --since و--until.

استخدام Docker Compose

للحصول على كل السجلات من جميع حاويات WhatsApp، قم بتشغيل الأمر التالي:

WA_API_VERSION=new-whatsapp-version docker-compose logs > debug_output.txt

ملاحظة: يمكن لهذا الأمر إنشاء ملفات تسجيل كبيرة جدًا. يمكنك الرجوع إلى قسم "استخدام Docker" للحصول على خيارات لاسترداد السجلات الأصغر والأكثر صلة.

ويمكنك عندئذ إرسال هذه الملفات إلى واتساب للتحليل وتصحيح الأخطاء.

سجلات الأعطال

قمنا بتنفيذ نظام جديد لتسجيل الأعطال في الإصدار 2.53، والذي يحفظ ملفات السجل عند حدوث عطل. يتم تخزين هذه الملفات، المعروفة باسم سجلات الأعطال، في الدليل logs/ ويتم الاحتفاظ بها لمدة 30 يومًا. يتم تخزين الملفات محليًا فقط على الأجهزة ويمكن استعادتها بطريقة ملفات السجل نفسها. قد تتضمن سجلات الأعطال بيانات الذاكرة المرتبطة بالسلسلة التي تحدث بها الأعطال.

استرداد سجلات Kubernetes

استخدام kubectl

للحصول على سجلات لخدمة معينة تم نشرها، مثل Webapp، في إعداد Kubernetes، قم بتشغيل الأمر التالي:

kubectl logs deployments/whatsapp-web-deployment > whatsapp-web-deployment.txt

ويمكنك عندئذ إرسال الملف إلى WhatsApp بغرض التحليل وتصحيح الأخطاء.

استرداد سجلات AWS

يرجى اتباع الخطوات التالية للحصول على السجلات عند إعداد AWS:

تعيين Rollback on Failure إلى No لضمان عدم حذف السجلات عند فشلها

يجب تعيين ذلك أثناء خطوة إنشاء/تحديث المكدس كما هو موضح أدناه:

الحصول على سجلات إنشاء المكدس والأحداث في CloudFormation من وحدة التحكم CloudWatch


الاتصال بمثيل EC2 لديك (إذا تم إنشاؤه بنجاح)

اتبع دليل AWS حول كيفية إدخال بروتوكول SSH إلى مثيل EC2 لديك. لاحظ أنه أثناء إنشاء/تحديث المكدس في API الخاصة بواتساب للأعمال، يمكنك تحديد استخدام VPC خاص أو عام. وباستخدام VPC خاص، يلزمك اتباع القسم الاتصال الآمن بمثيلات Linux التي تعمل ضمن Amazon VPC خاص.

الحصول على السجلات

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

  1. sudo docker logs ecs-agent > ecs-agent.log
  2. ضغط /var/log لجميع مثيلات EC2 التي تم إنشاؤها بواسطة المكدس واستردادها
  3. ثبّت WADebug على جميع مثيلات EC2 وشغّل أوامر wadebug logs لجمع كل سجلات الحاوية.
  4. إذا تعذر استخدام WADebug في الخطوة 3، فقم بتشغيل الأوامر التالية لجمع السجلات يدويًا:
    • تشغيل docker ps -a لإدراج كل الحاويات قيد التشغيل ومشاركة الإخراج
    • تشغيل docker logs <docker container id of the core app> >> wacore.log ومشاركة السجلات
    • تشغيل docker logs <docker container id of the web app> >> waweb.log ومشاركة السجلات
    • تشغيل docker cp <docker container id of the web app>:/var/log/whatsapp/web.log ./web.log ومشاركة السجلات
    • تشغيل docker cp <docker container id of the web app>:/var/log/lighttpd/error.log ./error.log ومشاركة السجلات

سجل النشاط

إذا لم يتم إنشاء مثيل EC2، فمن ثمّ يكون سجل النشاط لمجموعة التحجيم التلقائي الملائمة مطلوبًا. ويمكن العثور على هذا في وحدة التحكم EC2 -> التحجيم التلقائي -> مجموعات التحجيم التلقائي. ثم حدد المجموعة المناسبة للمكدس الذي به مشكلة وحدد علامة التبويب سجل النشاط.

تجميع معرفات طلب HTTP

بدءًا من الإصدار v2.21.3، تقوم واجهة API الخاصة بتطبيق WhatsApp للأعمال بإنشاء معرفات طلب فريدة لكل طلب HTTP وارد يتم تلقيه. وتُستخدم معرفات الطلب هذه للمساعدة في تحديد السجلات المتعلقة بطلب معين لاستكشاف الأخطاء وإصلاحها بشكل سريع. إذا كنت ترغب في الإبلاغ عن خطأ، فقم بتضمين قيم عناوين استجابة معرف X-Request-ID ومعرفات X-Internal-Request-IDS في التذكرة للمساعدة في تحديد مشكلتك وإعادة إنشائها.