เครื่องมือ Sosreport

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X
info

Sosreport เป็นเครื่องมือวิเคราะห์และเก็บรวบรวมข้อมูลระดับระบบที่อิงตามซอฟต์แวร์โอเพนซอร์ส SoS คุณสามารถใช้เครื่องมือ Sosreport เพื่อรวบรวมข้อมูลที่จะช่วยแก้ไขข้อบกพร่องในโหนดที่คอมโพเนนต์ Apigee ทำงานอยู่ เครื่องมือจะรวบรวมและจัดเก็บข้อมูลไว้ในระบบไฟล์ของโหนด

เครื่องมือ Sosreport จะรวบรวมรายละเอียดการกำหนดค่า ข้อมูลระบบ และข้อมูลการวินิจฉัยจากระบบของคุณ แล้วจัดเก็บข้อมูลไว้ในที่เก็บถาวร สำหรับคอมโพเนนต์ Apigee นั้น Sosreport จะรวบรวมข้อมูลต่อไปนี้

  • เวอร์ชันเคอร์เนลที่ใช้งานอยู่
  • โมดูลที่โหลด
  • ไฟล์การกำหนดค่าระบบและบริการ

นอกจากนี้ Sosreport ยังเรียกใช้โปรแกรมภายนอกเพื่อรวบรวมข้อมูลเพิ่มเติม ซึ่งรวมถึงข้อมูลต่อไปนี้

  • บันทึก Apigee จากคอมโพเนนต์ทั้งหมด
  • การวินิจฉัยรันไทม์
  • การวินิจฉัย Cassandra ที่รวบรวมโดยใช้คำสั่ง nodetool

เครื่องมือ Sosreport มีคำสั่งหลัก 2 คำสั่ง ได้แก่

  • sosreport: คำสั่งหลักสำหรับการรวบรวมข้อมูลและสร้างรายงาน
  • apigee-sosreport: เครื่องมือเสริมที่ใช้ในการติดตั้ง sosreport และจัดการปลั๊กอิน sosreport ที่เจาะจงสำหรับคอมโพเนนต์ Apigee

การติดตั้ง

ตารางต่อไปนี้แสดงรายละเอียดความพร้อมใช้งานและวิธีการติดตั้งเครื่องมือ Sosreport ใน Edge สำหรับเวอร์ชันที่รองรับ 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 พร้อมใช้งาน แต่อาจต้องตั้งค่าด้วยตนเอง ทั้งนี้ขึ้นอยู่กับสภาพแวดล้อมของคุณ

หากติดตั้ง sosreport เวอร์ชัน SoS ไว้แล้ว

หากติดตั้ง SoS เวอร์ชันเดิมของ sosreport ไว้ในระบบแล้ว อย่าตั้งค่าเวอร์ชันของ Apigee เนื่องจากเส้นทางการติดตั้งอาจขัดแย้งกัน แต่ให้คัดลอกปลั๊กอินเฉพาะ Apigee จากไดเรกทอรี /opt/apigee/apigee-sosreport/source/plugin ไปยังไดเรกทอรี site-packages ของ Python ที่เหมาะสมโดยใช้คำสั่งดังที่แสดงด้านล่าง เช่น หากต้องการคัดลอก 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

กำลังติดตั้ง sosreport เวอร์ชันของ Apigee

หากระบบยังไม่ได้ติดตั้ง 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→

การสร้างรายงาน

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

ส่วนต่อไปนี้จะอธิบายปลั๊กอิน Apigee สำหรับเครื่องมือ Sosreport สำหรับคอมโพเนนต์ต่อไปนี้

เซิร์ฟเวอร์การจัดการ

ปลั๊กอิน apigee-mgmt จะรวบรวมข้อมูลต่อไปนี้จากเซิร์ฟเวอร์การจัดการ

  • ชื่อโฮสต์เซิร์ฟเวอร์ (ค่าเริ่มต้น)
  • cpuinfo (ค่าเริ่มต้น)
  • meminfo (ค่าเริ่มต้น)
  • การตั้งค่าเครื่องเสมือน Java (JVM) เช่น หน่วยความจำ Djdk.tls.allowUnsafeServerCertChange และอื่นๆ (ค่าเริ่มต้น)
  • บันทึกการจัดการปัจจุบัน (ค่าเริ่มต้น)
  • เอาต์พุต top และ jstacks แบบต่อเนื่อง 10 รายการ (ค่าเริ่มต้น)
  • โฟลเดอร์บันทึกการจัดการทั้งหมด (ไม่บังคับ)
  • 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

หากต้องการรวบรวมรายการเริ่มต้นทั้งหมดและรายการที่ไม่บังคับที่ระบุในคำสั่ง เช่น ไฟล์การกำหนดค่าและบันทึกทั้งหมด ให้ป้อนคำสั่งใดคำสั่งหนึ่งต่อไปนี้

  • การใช้ 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
  • การใช้ 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

Message Processor

ปลั๊กอิน apigee-mp จะรวบรวมข้อมูลต่อไปนี้จาก Management Processor (MP)

  • ชื่อโฮสต์เซิร์ฟเวอร์ (ค่าเริ่มต้น)
  • cpuinfo (ค่าเริ่มต้น)
  • meminfo (ค่าเริ่มต้น)
  • buildinfo/release info (ค่าเริ่มต้น)
  • สถานะ apigee-all (ค่าเริ่มต้น)
  • รายละเอียดเซิร์ฟเวอร์ (ค่าเริ่มต้น)
  • การตั้งค่าระดับ JVM เช่น หน่วยความจำ Djdk.tls.allowUnsafeServerCertChange, ฯลฯ (ค่าเริ่มต้น)
  • บันทึก MP ปัจจุบัน (ค่าเริ่มต้น)
  • เอาต์พุต top, jstacks และ NIO Metrics ตามลำดับ 10 รายการ (ค่าเริ่มต้น)
  • โฟลเดอร์บันทึก MP ทั้งหมด (ไม่บังคับ)
  • แผนผังการจัดประเภท (ไม่บังคับ)
  • ฮีปดัมป์ (ไม่บังคับ)
  • 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 เวอร์ชัน 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

คุณระบุตัวเลือกได้หลายรายการในคำสั่งเดียว เช่น

  • การใช้ 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

หากต้องการรวบรวมทุกอย่างยกเว้นการติดตาม ให้ป้อนค่าใดค่าหนึ่งต่อไปนี้

  • การใช้ sosreport เวอร์ชันของ Apigee
    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 (ค่าเริ่มต้น)
  • สถานะ apigee-all (ค่าเริ่มต้น)
  • รายละเอียดเซิร์ฟเวอร์ (ค่าเริ่มต้น)
  • เอาต์พุต ps ซึ่งจะให้การตั้งค่าระดับ JVM เช่น หน่วยความจำ, Djdk.tls.allowUnsafeServerCertChange และอื่นๆ (ค่าเริ่มต้น)
  • บันทึกของเราเตอร์ปัจจุบัน (ค่าเริ่มต้น)
  • รายการชื่อไฟล์ vhost รวมถึงชื่อไฟล์ที่ไม่ถูกต้อง (ค่าเริ่มต้น)
  • โฟลเดอร์บันทึกของเราเตอร์ทั้งหมด (ไม่บังคับ)
  • 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 ให้ป้อนค่าใดค่าหนึ่งต่อไปนี้

  • การใช้ sosreport เวอร์ชันของ Apigee
    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

วิธีรวบรวมทุกอย่าง

  • การใช้ 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 version && apigee-all status
  • บันทึก apigee-cassandra: ไฟล์ทั้งหมดใน /opt/apigee/var/log/apigee-cassandra/
  • จำนวนบันทึกการคอมมิต
  • เอาต์พุตของคำสั่ง Top
  • Thread Dump
  • ไฟล์การกำหนดค่า: 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