أداة Sosreport

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
الانتقال إلى مستندات Apigee X
info

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

تجمع أداة Sosreport تفاصيل الإعدادات ومعلومات النظام ومعلومات التشخيص من نظامك، وتخزّن البيانات في أرشيف. بالنسبة إلى مكوّنات Apigee، يجمع Sosreport ما يلي:

  • إصدار النواة قيد التشغيل
  • الوحدات المحمَّلة
  • ملفات إعداد النظام والخدمة

يشغّل Sosreport أيضًا برامج خارجية لجمع المزيد من المعلومات، بما في ذلك:

  • سجلات Apigee من جميع المكوّنات
  • بيانات التشخيص أثناء التشغيل
  • بيانات تشخيص Cassandra التي يتم جمعها باستخدام أوامر nodetool

تحتوي أداة Sosreport على أمرَين رئيسيَين:

  • sosreport: الأمر الأساسي لجمع البيانات وإنشاء التقارير.
  • apigee-sosreport: أداة مساعدة تُستخدَم لتثبيت مكوّنات sosreport وإدارة مكوّنات sosreport الإضافية الخاصة بمكوّنات Apigee.

تثبيت

يوضّح الجدول التالي تفاصيل توفّر أداة Sosreport وطريقة تثبيتها في الإصدارات المتوافقة من Edge for Private Cloud.

إصدار OPDK تثبيت جديد الترقية الموضعية
‫4.50.00.11 - 4.52.01.00 يجب التثبيت يدويًا يجب التثبيت يدويًا
4.52.01.01+ مثبَّتة تلقائيًا مثبَّتة تلقائيًا
‫Amazon Linux 2023 والإصدارات الأحدث غير متاح غير متاح

تكون أداة Sosreport مثبَّتة تلقائيًا على جميع العُقد عند إعداد الإصدار 4.52.01.01 من Edge for Private Cloud أو التحديث إليه أو إلى إصدار أحدث.

يمكنك تنفيذ الأمر التالي للتحقّق من عملية التثبيت وإصدار أداة Sosreport والمكوّنات الإضافية الخاصة بها:

apigee-service apigee-sosreport version

لعرض جميع المكوّنات الإضافية المتوافقة مع أداة Sosreport، استخدِم الأمر التالي:

sudo sosreport --list-plugins

لعرض المكوّنات الإضافية الخاصة بـ Apigee فقط، شغِّل الأمر التالي:

sudo sosreport --list-plugins | grep apigee

بالنسبة إلى إصدارات Edge for Private Cloud من 4.50.00.11 إلى 4.52.01.00، تتوفّر أداة Sosreport ولكن قد تتطلّب إعدادًا يدويًا حسب بيئتك.

إذا كان إصدار SoS من sosreport مثبَّتًا

إذا كان الإصدار الأصلي من SoS sosreport مثبَّتًا على نظامك، لا تُعدّ إصدار Apigee، لأنّ مسارات التثبيت قد تتعارض. بدلاً من ذلك، انسخ المكوّنات الإضافية الخاصة بـ Apigee من الدليل /opt/apigee/apigee-sosreport/source/plugin إلى دليل Python site-packages المناسب باستخدام أمر مثل الأوامر الموضّحة أدناه. على سبيل المثال، لنسخ apigee-mgmt.py:

  • إذا كنت تستخدم Python 2، أدخِل:
    sudo cp apigee-mgmt.py /usr/lib/python2.7/site-packages/sos/plugins/
  • إذا كنت تستخدم Python 3، أدخِل:
    sudo cp apigee-mgmt.py /usr/local/lib/python3.6/site-packages/sos/plugins/

للتأكّد من تثبيت المكوّنات الإضافية، أدخِل

sudo sosreport --list-plugins

إذا كانت لديك أسئلة، يُرجى التواصل مع فريق دعم Apigee.

يوضّح القسم التالي كيفية تثبيت `sosreport` للإصدارات من 4.50.00.11 إلى 4.52.01.00.

تثبيت إصدار Apigee من sosreport

إذا لم يكن إصدار SoS من sosreport مثبّتًا على نظامك، يمكنك تثبيت إصدار Apigee من خلال إدخال الأوامر التالية على جميع العُقد التي تم تثبيت Edge for Private Cloud عليها:

/opt/apigee/apigee-service/bin/apigee-service apigee-sosreport install
/opt/apigee/apigee-service/bin/apigee-service apigee-sosreport setup

لاختبار تثبيت sosreport، تأكَّد من أنّ المكوّنات الإضافية ذات الصلة بـ Apigee تقع في الدليل التالي:

/usr/lib/pythonx.x/site-packages/sos/plugins

حيث pythonx.x هو إصدار Python المثبَّت.

بدلاً من ذلك، يمكنك تنفيذ أحد الأوامر التالية:

  • للتحقّق من صحة المكوّنات الإضافية الخاصة بـ Apigee فقط، اتّبِع الخطوات التالية:
    apigee-service apigee-sosreport diagnose -l

    تعرض هذه الدالة القائمة التالية من المكوّنات الإضافية الخاصة بـ Apigee.

    sosreport (version 3.9)
    
    The following plugins are currently enabled:
    
    apigee-mgmt          This is the apigee plugin for edge-management-server
    apigee-mp            This is the apigee plugin for edge-message-processor
    apigee-rrt           This is the apigee plugin for edge-router
    apigee-sample        Main diagnostics gathering class
  • للتحقّق من صحة جميع المكوّنات الإضافية، اتّبِع الخطوات التالية:
    apigee-service apigee-sosreport diagnose -s -l

    يؤدي هذا إلى عرض القائمة التالية من المكوّنات الإضافية المتاحة مع sosreport:

    sosreport (version 3.9)
    
    The following plugins are currently enabled:
    
     acpid                ACPI daemon information
     alternatives         System alternatives
     anacron              Anacron job scheduling service
     apigee-cassandra     This is the base class for sosreport plugins. Plugins should subclass
        this and set the class variables where applicable. ←truncated→
     apigee-mgmt          This is the base class for sosreport plugins. Plugins should subclass
        this and set the class variables where applicable. ←truncated→
     apigee-mp            Main diagnostics gathering class
     apigee-rrt           This is the base class for sosreport plugins. Plugins should subclass
        this and set the class variables where applicable. ←truncated→
    
    ………………………………………………….
    ………………………………………………….
    ………………………………………………….
    ←truncated→

إنشاء تقرير

الإصدار 4.52.01.01 والإصدارات الأحدث من Edge for Private Cloud

يمكن لأداة Sosreport رصد المكوّنات الحالية على العقدة وإنشاء تقرير بجميع السجلات التي تحتاجها فِرق الدعم لإجراء التحليل.

لإنشاء تقرير، استخدِم الأمر التالي:

apigee-service apigee-sosreport diagnose

يمكنك إضافة العلامات التالية إذا لزم الأمر:

  • ‎-f | --file | --config : مسار ملف الإعداد المستخدَم أثناء عملية الإعداد.
    Example: apigee-service apigee-sosreport diagnose -f /path/to/configuration.file
  • ‎-o | --output : لإعادة توجيه sosreport الذي تم إنشاؤه إلى دليل أو مسار معيّن
    Example: apigee-service apigee-sosreport diagnose -o /path/to/output_directory/

الإصدارات من 4.50.00.11 إلى 4.52.01.00 من Edge for Private Cloud

لإنشاء تقرير باستخدام أداة Sosreport، شغِّل الأمر sosreport مع خيار المكوّن الإضافي المطلوب (راجِع مكوّنات Apigee الإضافية). الدليل التلقائي الذي يتم فيه تخزين التقرير هو tmp أو /var/tmp. يمكنك تغيير الدليل الذي يتم تخزين التقرير فيه من خلال تمرير دليل مختلف إلى الخيار tmp-dir. على سبيل المثال، لإنشاء تقرير على Management Server وحفظه في دليل باسم my_report-dir، أدخِل أحد ما يلي:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • باستخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mgmt  --batch --tmp-dir=my_report-dir

يتم تخزين التقرير في ملف .tar.xz في الدليل الذي تحدّده باستخدام الخيار tmp-dir. يظهر موقع الملف .tar.xz على STDOUT، بالإضافة إلى المجموع الاختباري. على سبيل المثال:

Your sosreport has been generated and saved in:
 /var/sosreport-prc-test-0-9613-2021-07-12-orwxufx.tar.xz
The checksum is: 5a8b97c6020346a688254c8b04ef86ec
For more available options for sosreport, read the man file:
sudo man sosreport

يتم تخزين التقرير في ملف .tar.xz في الدليل الذي تحدّده باستخدام الخيار tmp-dir. يظهر موقع .tar.xz file الجغرافي على STDOUT، بالإضافة إلى المجموع الاختباري. على سبيل المثال:

للاطّلاع على المزيد من الخيارات المتاحة لـ sosreport، يمكنك قراءة ملف man:

sudo man sosreport

المكوّنات الإضافية في Apigee

توضّح الأقسام التالية مكوّنات Apigee الإضافية لأداة Sosreport:

خادم الإدارة

يجمع المكوّن الإضافي apigee-mgmt المعلومات التالية من "خادم الإدارة":

  • اسم مضيف الخادم (تلقائي)
  • cpuinfo (تلقائي)
  • meminfo (تلقائي)
  • إعدادات آلة Java الافتراضية (JVM)، مثل الذاكرة وDjdk.tls.allowUnsafeServerCertChange وما إلى ذلك (تلقائي)
  • سجلّات الإدارة الحالية (الخيار التلقائي)
  • عشرة مخرجات متسلسلة لأوامر top وjstacks (الإعداد التلقائي)
  • مجلد سجلّ الإدارة بالكامل (اختياري)
  • ملفات الإعداد (اختياري)

أمثلة:

لجمع كل العناصر التلقائية، أدخِل أحد الخيارات التالية:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mgmt --batch my_report-dir

لجمع كل العناصر التلقائية والعناصر الاختيارية المحدّدة في الأمر، مثل ملفات الإعداد وجميع السجلات، أدخِل أحد الخيارَين التاليَين:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

لجمع كل البيانات، أدخِل أحد الخيارات التالية:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

    يمكنك بدلاً من ذلك إدخال ما يلي:

    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -a
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

    يمكنك بدلاً من ذلك إدخال:

    sudo sosreport -o apigee-mgmt --batch -a

معالج الرسائل

يجمع المكوّن الإضافي apigee-mp المعلومات التالية من "وحدة المعالجة الإدارية" (MP):

  • اسم مضيف الخادم (تلقائي)
  • cpuinfo (تلقائي)
  • meminfo (تلقائي)
  • buildinfo/release info (الإعداد التلقائي)
  • حالة apigee-all (تلقائية)
  • تفاصيل الخادم (تلقائي)
  • إعدادات على مستوى الجهاز الافتراضي Java، مثل الذاكرة وDjdk.tls.allowUnsafeServerCertChange وما إلى ذلك (تلقائي)
  • سجلّات MP الحالية (الإعداد التلقائي)
  • إخراج 10 مقاييس متسلسلة لأعلى الصفحة وjstacks وNIO (الإعداد التلقائي)
  • مجلد سجلّ "القياس المتعدّد" بالكامل (اختياري)
  • شجرة التصنيف (اختيارية)
  • لقطة لأجزاء من الذاكرة (اختياري)
  • ملفات الإعداد (اختياري)
  • تتبُّع وقت التشغيل (اختياري وفقط عند توفير org:env:api:rev detail). ملاحظة: ينتظر البرنامج المساعد لمدة 25 ثانية لجمع طلبات وقت التشغيل.

أمثلة:

لجمع كل العناصر التلقائية، أدخِل أحد الخيارات التالية:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mp --batch

يمكنك أيضًا تحديد عناصر اختيارية إضافية لجمعها، بالإضافة إلى جميع العناصر التلقائية. على سبيل المثال، لتحديد لقطة لأجزاء من الذاكرة، باستخدام العلامة -k apigee-mp.heap، أدخِل أحد الخيارَين التاليَين:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.heap

وبالمثل، يمكنك تحديد العناصر الاختيارية التالية:

-k apigee-mp.deployments
-k apigee-mp.heap
-k apigee-mp.all-logs
-k apigee-mp.config-files
-k apigee-mp.trace=gsc-cps:test:httpbin:3

يمكنك تحديد خيارات متعددة في أمر واحد. على سبيل المثال:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs

لجمع كل شيء باستثناء التتبُّع، أدخِل أحد الخيارَين التاليَين:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -a
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-mp --batch -a

جهاز التوجيه

يجمع المكوّن الإضافي apigee-rrt المعلومات التالية من جهاز التوجيه:

  • اسم مضيف الخادم (تلقائي)
  • cpuinfo (تلقائي)
  • meminfo (تلقائي)
  • buildinfo/release info (الإعداد التلقائي)
  • حالة apigee-all (تلقائية)
  • تفاصيل الخادم (تلقائي)
  • ناتج الأمر ps، ما يوفّر إعدادات على مستوى JVM، مثل الذاكرة وDjdk.tls.allowUnsafeServerCertChange وما إلى ذلك (الإعداد التلقائي).
  • سجلات جهاز التوجيه الحالي (الخيار التلقائي)
  • قائمة بأسماء ملفات المضيفات الافتراضية، بما في ذلك أسماء الملفات غير الصالحة (الإعداد التلقائي)
  • مجلد سجلّ جهاز التوجيه بالكامل (اختياري)
  • ملفات الإعداد (اختياري)

أمثلة:

لجمع كل العناصر التلقائية، أدخِل أحد الخيارات التالية:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-rrt --batch

يمكنك أيضًا تحديد عناصر اختيارية إضافية لجمعها، بالإضافة إلى جميع العناصر التلقائية. على سبيل المثال، لتحديد مجلد السجلّ بأكمله باستخدام العلامة -k apigee-rrt.all-logs، أدخِل أحد الخيارَين التاليَين:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -k apigee-rrt.all-logs
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-rrt --batch -k apigee-rrt.all-logs

وبالمثل، يمكنك تحديد العناصر الاختيارية التالية:

-k apigee-rrt.all-logs
-k apigee-rrt.config-files

لجمع كل شيء:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-rrt --batch -a

Cassandra

يجمع المكوّن الإضافي apigee-cassandra المعلومات التالية من عُقد Cassandra:

  • إحصاءات الجهاز:
    "hostname -i"
    "cat /proc/cpuinfo"
    "cat /proc/meminfo"
    "ulimit -a"
    "ps auxw"
    "df -kh"
    "du -sh"
    "netstat -ntlpu"
    "free -h"
    "ifconfig -h"
    "ps -ef"
  • حالة مكوّن Apigee وإصداره إصدار apigee-all وحالة apigee-all
  • سجلات apigee-cassandra: جميع الملفات ضِمن /opt/apigee/var/log/apigee-cassandra/
  • عدد سجلات عمليات الإيداع
  • ناتج الأمر Top
  • تفريغ بيانات سلسلة التعليمات
  • ملفات الإعداد: cassandra-topology.properties وcassandra.yaml وcassandra-env.sh
  • Nodetool Output for the following parameters: version, status, ring, info, gossipinfo, compactionstats -H, tpstats, netstats, cfstats, proxyhistograms

مثال:

لجمع كل العناصر التلقائية، أدخِل أحد الخيارات التالية:

  • استخدام إصدار Apigee من sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • استخدام إصدار SoS من sosreport:
    sudo sosreport -o apigee-cassandra