Sosreport टूल

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

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

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

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

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

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

Sosreport टूल में दो मुख्य निर्देश होते हैं:

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

इंस्टॉल करना

इस सेक्शन में, sosreport को इंस्टॉल करने का तरीका बताया गया है.

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

अगर आपके सिस्टम पर, sosreport का मूल SoS वर्शन पहले से ही इंस्टॉल है, तो Apigee का वर्शन सेट अप करें. ऐसा इसलिए, क्योंकि इंस्टॉल करने के पाथ में टकराव हो सकता है. इसके बजाय, किसी निर्देश का इस्तेमाल करके /opt/apigee/apigee-sosreport/source/plugin डायरेक्ट्री से, Apigee के खास प्लगिन को सही Python site-packages डायरेक्ट्री में कॉपी करें. उदाहरण के लिए, 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 वर्शन इंस्टॉल हो रहा है

अगर आपके सिस्टम पर sosreport का SoS वर्शन पहले से इंस्टॉल नहीं है, तो जिन नोड पर Edge for Private Cloud इंस्टॉल है उन सभी नोड पर ये निर्देश डालकर, Apigee का वर्शन इंस्टॉल किया जा सकता है:

/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
  • Sosreport के SoS वर्शन का इस्तेमाल करें:
    sudo sosreport -o apigee-mgmt  --batch --tmp-dir=my_report-dir

रिपोर्ट, tmp-dir विकल्प का इस्तेमाल करके तय की गई डायरेक्ट्री की .tar.xz फ़ाइल में सेव होती है. .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

रिपोर्ट, tmp-dir विकल्प का इस्तेमाल करके तय की गई डायरेक्ट्री की .tar.xz फ़ाइल में सेव होती है. .tar.xz file की जगह की जानकारी को STDOUT और चेकसम पर दिखाया जाता है. उदाहरण के लिए:

sosreport के लिए ज़्यादा उपलब्ध विकल्पों के लिए, man फ़ाइल पढ़ें:

sudo man sosreport

Apigee प्लगिन

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

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

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

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

उदाहरण:

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

  • Apigee के sosreport वर्शन का इस्तेमाल किया जा रहा है:
    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

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

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

  • सर्वर का होस्टनेम (डिफ़ॉल्ट)
  • cpuinfo (डिफ़ॉल्ट)
  • Meminfo (डिफ़ॉल्ट)
  • बिल्ड जानकारी/रिलीज़ जानकारी (डिफ़ॉल्ट)
  • सभी ऐप्लिकेशन की स्थिति (डिफ़ॉल्ट)
  • सर्वर की जानकारी (डिफ़ॉल्ट)
  • जेवीएम लेवल की सेटिंग, जैसे कि मेमोरी, Djdk.tls.allowUnsafeServerCertChange वगैरह (डिफ़ॉल्ट)
  • मौजूदा एमपी लॉग (डिफ़ॉल्ट)
  • क्रम में चलने वाले दस सबसे ऊपर, 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
  • sosreport के SoS वर्शन का इस्तेमाल करें:
    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
  • sosreport के SoS वर्शन का इस्तेमाल करें:
    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
  • 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 (डिफ़ॉल्ट)
  • बिल्ड जानकारी/रिलीज़ जानकारी (डिफ़ॉल्ट)
  • सभी ऐप्लिकेशन की स्थिति (डिफ़ॉल्ट)
  • सर्वर की जानकारी (डिफ़ॉल्ट)
  • ps आउटपुट. इससे आपको JVM लेवल की सेटिंग मिलेंगी. जैसे, मेमोरी, Djdk.tls.allowUnsafeServerCertChange वगैरह (डिफ़ॉल्ट).
  • मौजूदा राऊटर लॉग (डिफ़ॉल्ट)
  • vhost फ़ाइल के नामों की सूची, जिसमें गलत फ़ाइल नाम शामिल हैं (डिफ़ॉल्ट)
  • राऊटर का पूरा लॉग फ़ोल्डर (ज़रूरी नहीं)
  • कॉन्फ़िगरेशन फ़ाइलें (ज़रूरी नहीं है)

उदाहरण:

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

  • Apigee के sosreport वर्शन का इस्तेमाल किया जा रहा है:
    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 के SoS वर्शन का इस्तेमाल करें:
    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
  • sosreport के SoS वर्शन का इस्तेमाल करें:
    sudo sosreport -o apigee-rrt --batch -a

कसांद्रा

apigee-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
  • इन पैरामीटर के लिए Nodetool आउटपुट: वर्शन, status, Ring, info, gossipinfo, Compactionstats -H, tpstats, netstats, cfstats, प्रॉक्सीहीस्टोग्राम

उदाहरण:

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

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