أداة Sosreport

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
المعلومات

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

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

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

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

  • سجلات Apigee من جميع المكونات.
  • بيانات التشخيص في وقت التشغيل
  • بيانات تشخيص كاساندرا التي تم جمعها باستخدام أوامر dottool.

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

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

تثبيت

يوضّح هذا القسم كيفية تثبيت sosreport.

في حال تثبيت إصدار SoS من sosreport حاليًا

في حال سبق أن تم تثبيت إصدار SoS الأصلي من sosreport على نظامك، لا تضبط إصدار Apigee، لأنّ مسارات التثبيت قد تتعارض. بدلاً من ذلك، انسخ المكوّنات الإضافية الخاصة بـ Apigee من الدليل /opt/apigee/apigee-sosreport/source/plugin إلى دليل site-packages المناسب في Python باستخدام أمر مثل تلك الموضّحة أدناه. على سبيل المثال، لنسخ agigee-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.

جارٍ تثبيت إصدار 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 gatehring 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→

إنشاء تقرير

لإنشاء تقرير باستخدام أداة 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 وما إلى ذلك (الإعداد التلقائي)
  • سجلّات الإدارة الحالية (تلقائية)
  • عشرة نتائج تسلسلية لأعلى ومخرجات 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 (تلقائي)
  • تفاصيل الخادم (تلقائي)
  • إعدادات مستوى JVM، مثل الذاكرة وDjdk.tls.allowUnsafeServerCertChange وما إلى ذلك (الإعداد التلقائي)
  • سجلات MP الحالية (تلقائية)
  • عشرة تسلسلات لأعلى ومخرجات jstacks وNIO Metrics (تلقائي)
  • مجلد سجلات MP بالكامل (اختياري)
  • شجرة التصنيف (اختياري)
  • نَسْخ الذاكرة (اختياري)
  • 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

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

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

أمثلة:

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

  • استخدام إصدار 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

من الفئة العمرية 31-45

يجمع المكوّن الإضافي 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/
  • عدد سجلّات التنفيذ
  • نتيجة الأمر للأعلى
  • تفريغ سلاسل المحادثات
  • ملفات الإعدادات: cassandra-topology.properties وcassandra.yaml وcassandra-env.sh
  • مخرجات أداة العقدة للمعلَمات التالية: الإصدار، والحالة، والرنين، والمعلومات، وgossipinfo، وضغط البيانات -H، وtpstats، وnetstats، وcfstats، والمخطّطات التكرارية

مثال:

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

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