أداة 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 تلقائيًا على جميع العُقد عند إجراء عملية تثبيت جديدة لإصدار Edge for Private Cloud 4.52.01.01 والإصدارات الأحدث.

في حال إجراء ترقية موضعية إلى Edge for Private Cloud 4.52.01.01 أو إصدار أحدث، نفِّذ الأمر التالي على كل عقدة لتعديل أداة Sosreport:

/opt/apigee/apigee-service/bin/apigee-service apigee-sosreport update

يمكنك تنفيذ الأمر التالي للتحقّق من عملية التثبيت وإصدار أداة 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. على سبيل المثال، لإنشاء تقرير عن خادم الإدارة وحفظه في دليل باسم 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 (تلقائي)
  • مجلد سجلّ الإدارة بالكامل (اختياري)
  • config-files (اختياري)

أمثلة:

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

  • استخدام إصدار 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 status (تلقائي)
  • تفاصيل الخادم (تلقائي)
  • إعدادات على مستوى الجهاز الافتراضي Java، مثل الذاكرة وDjdk.tls.allowUnsafeServerCertChange وما إلى ذلك (تلقائي)
  • سجلّات "اللاعب المتعدّد" الحالية (تلقائي)
  • عشرة مخرجات متسلسلة من مقاييس top وjstacks وNIO (تلقائي)
  • مجلد سجلّ "القياس المتعدّد" بالكامل (اختياري)
  • شجرة التصنيف (اختيارية)
  • لقطة لأجزاء من الذاكرة (اختياري)
  • config-files (اختياري)
  • تتبُّع وقت التشغيل (اختياري وفقط عند توفير 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

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

  • استخدام إصدار sosreport من Apigee:
    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 status (تلقائي)
  • تفاصيل الخادم (تلقائي)
  • ps output. سيؤدي ذلك إلى توفير إعدادات على مستوى 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، أدخِل أحد الخيارات التالية:

  • استخدام إصدار sosreport من Apigee:
    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 version && apigee-all status
  • سجلّات apigee-cassandra: جميع الملفات ضمن /opt/apigee/var/log/apigee-cassandra/
  • عدد سجلّات عمليات الإرسال
  • ناتج الأمر Top
  • تفريغ سلسلة التعليمات
  • ملفات الإعداد: cassandra-topology.properties وcassandra.yaml وcassandra-env.sh
  • مخرجات Nodetool للمَعلمات التالية: 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