Sosreport टूल

आपको Apigee Edge से जुड़ा दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं.
info

Sosreport, सिस्टम-लेवल पर गड़बड़ी की जानकारी इकट्ठा करने और डेटा कलेक्शन करने वाला टूल है. यह ओपन सोर्स सॉफ़्टवेयर SoS पर आधारित है. Sosreport टूल का इस्तेमाल करके, उन नोड में समस्याओं को डीबग करने के लिए जानकारी इकट्ठा की जा सकती है जिनमें Apigee कॉम्पोनेंट चल रहा है. यह टूल, नोड के फ़ाइल सिस्टम पर स्थानीय तौर पर जानकारी इकट्ठा और सेव करता है.

Sosreport टूल, आपके सिस्टम से कॉन्फ़िगरेशन की जानकारी, सिस्टम की जानकारी, और गड़बड़ी की जानकारी इकट्ठा करता है. इसके बाद, वह इस डेटा को एक संग्रह में सेव करता है. Apigee कॉम्पोनेंट के लिए, Sosreport यह जानकारी इकट्ठा करता है:

  • मौजूदा कर्नेल वर्शन
  • लोड किए गए मॉड्यूल
  • सिस्टम और सेवा की कॉन्फ़िगरेशन फ़ाइलें

Sosreport, ज़्यादा जानकारी इकट्ठा करने के लिए बाहरी प्रोग्राम भी चलाता है. इनमें ये शामिल हैं:

  • सभी कॉम्पोनेंट से Apigee लॉग.
  • रनटाइम डाइग्नोस्टिक्स
  • nodetool कमांड का इस्तेमाल करके, Cassandra के डाइग्नोस्टिक्स के नतीजे इकट्ठा किए गए.

Sosreport टूल में दो मुख्य कमांड होते हैं:

  • sosreport: यह डेटा इकट्ठा करने और रिपोर्ट बनाने के लिए इस्तेमाल की जाने वाली मुख्य कमांड है.
  • apigee-sosreport: यह एक सहायक टूल है. इसका इस्तेमाल, Apigee के कॉम्पोनेंट के लिए खास तौर पर बनाए गए sosreport और sosreport प्लग इन इंस्टॉल और मैनेज करने के लिए किया जाता है.

इंस्टॉल करना

यहां दी गई टेबल में, Edge for Private Cloud के साथ काम करने वाले वर्शन में Sosreport टूल की उपलब्धता और इसे इंस्टॉल करने के तरीके के बारे में बताया गया है.

OPDK वर्शन नया इंस्टॉल इन-प्लेस अपग्रेड
4.50.00.11 - 4.52.01.00 मैन्युअल तरीके से इंस्टॉल करना ज़रूरी है मैन्युअल तरीके से इंस्टॉल करना ज़रूरी है
4.52.01.01+ डिफ़ॉल्ट रूप से इंस्टॉल किया गया मैन्युअल तरीके से अपग्रेड करना ज़रूरी है
Amazon Linux 2023+ ये काम नहीं करते हैं ये काम नहीं करते हैं

Edge for Private Cloud 4.52.01.01 और इसके बाद के वर्शन को नए सिरे से इंस्टॉल करने पर, Sosreport टूल सभी नोड पर डिफ़ॉल्ट रूप से इंस्टॉल हो जाता है.

अगर आपको 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 टूल उपलब्ध है. हालांकि, आपके एनवायरमेंट के हिसाब से, इसे मैन्युअल तरीके से सेटअप करना पड़ सकता है.

अगर sosreport का SoS वर्शन पहले से इंस्टॉल है

अगर आपके सिस्टम पर sosreport का ओरिजनल SoS वर्शन पहले से इंस्टॉल है, तो 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 की सहायता टीम से संपर्क करें.

यहां दिए गए सेक्शन में, 4.50.00.11 से लेकर 4.52.01.00 तक के वर्शन के लिए, `sosreport` इंस्टॉल करने का तरीका बताया गया है.

Apigee के sosreport का वर्शन इंस्टॉल किया जा रहा है

अगर आपके सिस्टम पर sosreport का SoS वर्शन पहले से इंस्टॉल नहीं है, तो 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→

रिपोर्ट बनाना

Edge for Private Cloud के 4.52.01.01 और उसके बाद के वर्शन

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/

Edge for Private Cloud के वर्शन 4.50.00.11 से 4.52.01.00 तक

Sosreport टूल का इस्तेमाल करके रिपोर्ट बनाने के लिए, ज़रूरी प्लगिन विकल्प के साथ sosreport कमांड चलाएं. इसके लिए, Apigee प्लगिन देखें. रिपोर्ट को सेव करने की डिफ़ॉल्ट डायरेक्ट्री, tmp या /var/tmp होती है. tmp-dir विकल्प में कोई दूसरी डायरेक्ट्री पास करके, रिपोर्ट को सेव करने की डायरेक्ट्री बदली जा सकती है. उदाहरण के लिए, मैनेजमेंट सर्वर पर रिपोर्ट बनाने और उसे my_report-dir नाम की डायरेक्ट्री में सेव करने के लिए, इनमें से कोई एक डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • sosreport के SoS वर्शन का इस्तेमाल करना:
    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 प्लगिन

यहां दिए गए सेक्शन में, इन कॉम्पोनेंट के लिए Sosreport टूल में Apigee प्लग इन के बारे में बताया गया है:

मैनेजमेंट सर्वर

apigee-mgmt प्लगिन, मैनेजमेंट सर्वर से यह जानकारी इकट्ठा करता है:

  • सर्वर का होस्टनेम (डिफ़ॉल्ट)
  • cpuinfo (डिफ़ॉल्ट)
  • meminfo (डिफ़ॉल्ट)
  • Java वर्चुअल मशीन (जेवीएम) की सेटिंग, जैसे कि मेमोरी, Djdk.tls.allowUnsafeServerCertChange वगैरह (डिफ़ॉल्ट)
  • मौजूदा मैनेजमेंट लॉग (डिफ़ॉल्ट)
  • क्रम में चलने वाले 10 टॉप और jstacks आउटपुट (डिफ़ॉल्ट)
  • मैनेजमेंट लॉग का पूरा फ़ोल्डर (ज़रूरी नहीं)
  • config-files (ज़रूरी नहीं)

उदाहरण:

सभी डिफ़ॉल्ट आइटम इकट्ठा करने के लिए, इनमें से कोई एक जानकारी डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • sosreport के SoS वर्शन का इस्तेमाल करके:
    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
  • sosreport के SoS वर्शन का इस्तेमाल करना:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

सभी को इकट्ठा करने के लिए, इनमें से कोई एक विकल्प डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    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
  • sosreport के SoS वर्शन का इस्तेमाल करना:
    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 प्लगिन, मैनेजमेंट प्रोसेसर (एमपी) से यह जानकारी इकट्ठा करता है:

  • सर्वर होस्टनेम (डिफ़ॉल्ट)
  • cpuinfo (डिफ़ॉल्ट)
  • meminfo (डिफ़ॉल्ट)
  • buildinfo/release info (default)
  • apigee-all status (डिफ़ॉल्ट)
  • सर्वर की जानकारी (डिफ़ॉल्ट)
  • जेवीएम लेवल की सेटिंग, जैसे कि मेमोरी, Djdk.tls.allowUnsafeServerCertChange वगैरह (डिफ़ॉल्ट)
  • मौजूदा एमपी लॉग (डिफ़ॉल्ट)
  • क्रम में चलने वाले 10 टॉप, jstacks, और NIO मेट्रिक आउटपुट (डिफ़ॉल्ट)
  • पूरा एमपी लॉग फ़ोल्डर (ज़रूरी नहीं)
  • कैटगरी ट्री (ज़रूरी नहीं)
  • हीप डंप (ज़रूरी नहीं)
  • config-files (ज़रूरी नहीं)
  • रनटाइम ट्रेस (ज़रूरी नहीं और सिर्फ़ तब, जब org:env:api:rev detail दिया गया हो). ध्यान दें: प्लगिन, रनटाइम के अनुरोधों को इकट्ठा करने के लिए 25 सेकंड तक इंतज़ार करता है.

उदाहरण:

सभी डिफ़ॉल्ट आइटम इकट्ठा करने के लिए, इनमें से कोई एक जानकारी डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • sosreport के SoS वर्शन का इस्तेमाल करके:
    sudo sosreport -o apigee-mp --batch

सभी डिफ़ॉल्ट आइटम के अलावा, इकट्ठा किए जाने वाले अन्य वैकल्पिक आइटम भी तय किए जा सकते हैं. उदाहरण के लिए, हीप डंप के बारे में बताने के लिए, -k apigee-mp.heap फ़्लैग का इस्तेमाल करें. इसके लिए, इनमें से कोई एक वैल्यू डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • 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

एक ही कमांड में कई विकल्प दिए जा सकते हैं. उदाहरण के लिए:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs
  • sosreport के SoS वर्शन का इस्तेमाल करना:
    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
  • sosreport के SoS वर्शन का इस्तेमाल करना:
    sudo sosreport -o apigee-mp --batch -a

राऊटर

apigee-rrt प्लगिन, राऊटर से यह जानकारी इकट्ठा करता है:

  • सर्वर होस्टनेम (डिफ़ॉल्ट)
  • cpuinfo (डिफ़ॉल्ट)
  • meminfo (डिफ़ॉल्ट)
  • buildinfo/release info (default)
  • apigee-all status (डिफ़ॉल्ट)
  • सर्वर की जानकारी (डिफ़ॉल्ट)
  • ps आउटपुट. इससे JVM लेवल की सेटिंग मिलेंगी. उदाहरण के लिए, मेमोरी, Djdk.tls.allowUnsafeServerCertChange वगैरह (डिफ़ॉल्ट).
  • राउटर के मौजूदा लॉग (डिफ़ॉल्ट)
  • वीहोस्ट फ़ाइलों के नामों की सूची. इसमें खराब फ़ाइलों के नाम भी शामिल हैं (डिफ़ॉल्ट)
  • पूरा राउटर लॉग फ़ोल्डर (ज़रूरी नहीं)
  • config-files (ज़रूरी नहीं)

उदाहरण:

सभी डिफ़ॉल्ट आइटम इकट्ठा करने के लिए, इनमें से कोई एक जानकारी डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • sosreport के SoS वर्शन का इस्तेमाल करके:
    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
  • sosreport के एसओएस वर्शन का इस्तेमाल करना:
    sudo sosreport -o apigee-rrt --batch -k apigee-rrt.all-logs

इसी तरह, इन वैकल्पिक आइटम के बारे में भी बताया जा सकता है:

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

सभी आइटम इकट्ठा करने के लिए:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • sosreport के SoS वर्शन का इस्तेमाल करके:
    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 का आउटपुट: version, status, ring, info, gossipinfo, compactionstats -H, tpstats, netstats, cfstats, proxyhistograms

उदाहरण:

सभी डिफ़ॉल्ट आइटम इकट्ठा करने के लिए, इनमें से कोई एक वैल्यू डालें:

  • sosreport के Apigee वर्शन का इस्तेमाल करना:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • sosreport के SoS वर्शन का इस्तेमाल करके:
    sudo sosreport -o apigee-cassandra