Công cụ Sosreport

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

Sosreport là công cụ chẩn đoán và thu thập dữ liệu cấp hệ thống, dựa trên mã nguồn mở phần mềm SoS. Bạn có thể sử dụng công cụ Sosreport để thu thập thông tin nhằm giúp bạn gỡ lỗi sự cố tại các nút mà tại đó một Apigee đang chạy. Công cụ này thu thập và lưu trữ thông tin cục bộ trên hệ thống tệp của nút.

Công cụ Sosreport thu thập thông tin cấu hình, thông tin hệ thống và thông tin chẩn đoán khỏi hệ thống của bạn, rồi lưu trữ dữ liệu đó trong kho lưu trữ. Đối với các thành phần Apigee, Sosreport thu thập những thông tin sau:

  • Phiên bản kernel đang chạy
  • Mô-đun đã tải
  • Các tệp cấu hình dịch vụ và hệ thống

Sosreport cũng chạy các chương trình bên ngoài để thu thập thêm thông tin, bao gồm:

  • Nhật ký Apigee từ tất cả các thành phần.
  • Thông tin chẩn đoán về thời gian chạy
  • Thông tin chẩn đoán Cassandra được thu thập bằng các lệnhnodetool.

Công cụ Sosreport chứa hai lệnh chính:

  • sosreport: Lệnh chính để thu thập dữ liệu và tạo báo cáo.
  • apigee-sosreport: Một công cụ phụ dùng để cài đặt sosreport và quản lý sosreport trình bổ trợ dành riêng cho các thành phần Apigee.

Cài đặt

Phần này giải thích cách cài đặt sosreport.

Nếu bạn đã cài đặt phiên bản SoS của sosreport

Nếu giá trị gốc Phiên bản SoS của sosreport đã được cài đặt trên hệ thống của bạn, không thiết lập phiên bản của Apigee vì các đường dẫn cài đặt có thể xung đột với nhau. Thay vào đó, hãy sao chép các trình bổ trợ dành riêng cho Apigee từ thư mục /opt/apigee/apigee-sosreport/source/plugin sang Python thích hợp Thư mục site-packages bằng cách sử dụng lệnh như các lệnh bên dưới. Ví dụ: để sao chép agigee-mgmt.py:

  • Nếu bạn đang sử dụng Python 2, hãy nhập:
    sudo cp apigee-mgmt.py /usr/lib/python2.7/site-packages/sos/plugins/
  • Nếu bạn đang sử dụng Python 3, hãy nhập:
    sudo cp apigee-mgmt.py /usr/local/lib/python3.6/site-packages/sos/plugins/

Để xác minh rằng trình bổ trợ đã được cài đặt, hãy nhập

sudo sosreport --list-plugins

Nếu bạn có thắc mắc, hãy liên hệ với nhóm hỗ trợ của Apigee.

Cài đặt phiên bản sosreport của Apigee

Nếu phiên bản SoS của sosreport không đã cài đặt trên hệ thống của bạn, nên bạn có thể cài đặt phiên bản của Apigee bằng cách nhập các lệnh sau trên tất cả các nút mà bạn đã cài đặt Edge dành cho Đám mây riêng tư:

/opt/apigee/apigee-service/bin/apigee-service apigee-sosreport install
/opt/apigee/apigee-service/bin/apigee-service apigee-sosreport setup

Để kiểm tra xem sosreport đã được cài đặt chưa, hãy xác nhận rằng các trình bổ trợ liên quan đến Apigee nằm trong thư mục sau:

/usr/lib/pythonx.x/site-packages/sos/plugins

trong đó pythonx.x là phiên bản Python bạn đã cài đặt.

Ngoài ra, bạn có thể chạy một trong các lệnh sau:

  • Cách xác minh riêng các trình bổ trợ dành riêng cho Apigee:
    apigee-service apigee-sosreport diagnose -l

    Thao tác này sẽ trả về danh sách các trình bổ trợ dành riêng cho Apigee sau đây.

    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
  • Cách xác minh tất cả các trình bổ trợ:
    apigee-service apigee-sosreport diagnose -s -l

    Thao tác này sẽ trả về danh sách các trình bổ trợ sau đây có sẵn với 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→

Tạo báo cáo

Để tạo báo cáo bằng công cụ Sosreport, hãy chạy lệnh sosreport với tuỳ chọn trình bổ trợ bắt buộc (xem Trình bổ trợ Apigee). Chiến lược phát hành đĩa đơn Thư mục mặc định nơi lưu trữ báo cáo là tmp hoặc /var/tmp. Bạn có thể thay đổi thư mục lưu trữ báo cáo bằng cách chuyển một thư mục khác vào tuỳ chọn tmp-dir. Ví dụ: để tạo một báo cáo về Máy chủ quản lý và lưu vào thư mục có tên my_report-dir, nhập một trong các thông tin sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mgmt  --batch --tmp-dir=my_report-dir

Báo cáo được lưu trữ trong tệp .tar.xz trong thư mục mà bạn chỉ định bằng hàm Tuỳ chọn tmp-dir. Vị trí của tệp .tar.xz được hiển thị trên STDOUT, cũng như giá trị tổng kiểm. Ví dụ:

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

Báo cáo được lưu trữ trong tệp .tar.xz trong thư mục mà bạn chỉ định bằng hàm Tuỳ chọn tmp-dir. Vị trí của .tar.xz file được hiển thị trên STDOUT, cũng như giá trị tổng kiểm. Ví dụ:

Để biết thêm các tuỳ chọn có sẵn cho sosreport, hãy đọc tệp man:

sudo man sosreport

Trình bổ trợ Apigee

Các phần sau đây mô tả các trình bổ trợ Apigee cho công cụ Sosreport các thành phần sau:

Máy chủ quản lý

Trình bổ trợ apigee-mgmt thu thập thông tin sau từ Máy chủ quản lý:

  • tên máy chủ (mặc định)
  • cpuinfo (mặc định)
  • meminfo (mặc định)
  • Các chế độ cài đặt máy ảo Java (JVM), chẳng hạn như bộ nhớ, Djdk.tls.allowUnsafeServerCertChange, v.v. (mặc định)
  • Nhật ký quản lý hiện tại (mặc định)
  • 10 đầu ra jstack trên cùng và jstack tuần tự (mặc định)
  • Toàn bộ thư mục Nhật ký quản lý (không bắt buộc)
  • tệp cấu hình (không bắt buộc)

Ví dụ:

Để thu thập tất cả các mục mặc định, hãy nhập một trong các mục sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mgmt --batch my_report-dir

Để thu thập tất cả các mục mặc định cũng như(các) mục không bắt buộc được chỉ định trong lệnh, đối với ví dụ: tệp cấu hình và tất cả nhật ký, hãy nhập một trong các thông tin sau:

  • Sử dụng phiên bản sosreport của 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
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

Để thu thập mọi thông tin, hãy nhập một trong những thông tin sau:

  • Sử dụng phiên bản sosreport của 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

    Ngoài ra, bạn có thể nhập:

    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -a
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

    Ngoài ra, bạn có thể nhập:

    sudo sosreport -o apigee-mgmt --batch -a

Trình xử lý tin nhắn

Trình bổ trợ apigee-mp thu thập thông tin sau từ Đơn vị xử lý quản lý (MP):

  • Tên máy chủ (mặc định)
  • cpuinfo (mặc định)
  • meminfo (mặc định)
  • buildinfo/thông tin phát hành (mặc định)
  • trạng thái apigee-all (mặc định)
  • chi tiết máy chủ (mặc định)
  • Các chế độ cài đặt cấp máy ảo, ví dụ: bộ nhớ, Djdk.tls.allowUnsafeServerCertChange, v.v. (mặc định)
  • Nhật ký MP hiện tại (mặc định)
  • 10 đầu ra Chỉ số trên cùng, jstack và NIO tuần tự (mặc định)
  • Toàn bộ thư mục nhật ký MP (không bắt buộc)
  • Cây phân loại (không bắt buộc)
  • Tệp báo lỗi (không bắt buộc)
  • tệp cấu hình (không bắt buộc)
  • Theo dõi thời gian chạy (không bắt buộc và chỉ khi org:env:api:rev detail ). Lưu ý: Trình bổ trợ sẽ đợi 25 giây để thu thập các yêu cầu trong thời gian chạy.

Ví dụ:

Để thu thập tất cả các mục mặc định, hãy nhập một trong các mục sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mp --batch

Bạn cũng có thể chỉ định các mục không bắt buộc khác để thu thập, ngoài tất cả các mục mặc định. Ví dụ: để chỉ định tệp báo lỗi, hãy sử dụng cờ -k apigee-mp.heap, nhập một trong các nội dung sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.heap

Tương tự, bạn có thể chỉ định các mục không bắt buộc sau:

-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

Bạn có thể chỉ định nhiều tuỳ chọn trong một lệnh. Ví dụ:

  • Sử dụng phiên bản sosreport của 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
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs

Để thu thập mọi thứ ngoại trừ dấu vết, hãy nhập một trong các nội dung sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -a
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-mp --batch -a

Bộ định tuyến

Trình bổ trợ apigee-rrt thu thập thông tin sau từ Bộ định tuyến:

  • Tên máy chủ (mặc định)
  • cpuinfo (mặc định)
  • meminfo (mặc định)
  • buildinfo/thông tin phát hành (mặc định)
  • trạng thái apigee-all (mặc định)
  • chi tiết máy chủ (mặc định)
  • ps đầu ra. Thao tác này sẽ cung cấp các chế độ cài đặt cấp JVM, ví dụ: bộ nhớ, Djdk.tls.allowUnsafeServerCertChange, v.v. (mặc định).
  • Nhật ký bộ định tuyến hiện tại (mặc định)
  • Danh sách tên tệp vhost bao gồm tên tệp không hợp lệ (mặc định)
  • Toàn bộ thư mục nhật ký Bộ định tuyến (không bắt buộc)
  • tệp cấu hình (không bắt buộc)

Ví dụ:

Để thu thập tất cả các mục mặc định, hãy nhập một trong các mục sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-rrt --batch

Bạn cũng có thể chỉ định các mục không bắt buộc khác để thu thập, ngoài tất cả các mục mặc định. Ví dụ: để chỉ định toàn bộ thư mục nhật ký, hãy sử dụng cờ -k apigee-rrt.all-logs, nhập một trong các nội dung sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -k apigee-rrt.all-logs
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-rrt --batch -k apigee-rrt.all-logs

Tương tự, bạn có thể chỉ định các mục không bắt buộc sau:

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

Cách thu thập mọi thứ:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-rrt --batch -a

Cassandra

Trình bổ trợ apigee-cassandra thu thập thông tin sau từ Nút Cassandra:

  • Số liệu thống kê về máy:
    "hostname -i"
    "cat /proc/cpuinfo"
    "cat /proc/meminfo"
    "ulimit -a"
    "ps auxw"
    "df -kh"
    "du -sh"
    "netstat -ntlpu"
    "free -h"
    "ifconfig -h"
    "ps -ef"
  • Trạng thái và phiên bản của thành phần Apigee phiên bản apigee-all && trạng thái apigee-all
  • nhật ký apigee-cassandra: Tất cả tệp trong /opt/apigee/var/log/apigee-cassandra/
  • Số lượng nhật ký xác nhận
  • Kết quả của lệnh Trên cùng
  • Tệp kết xuất luồng
  • Tệp cấu hình: cassandra-topology.properties, cassandra.yaml, cassandra-env.sh
  • Đầu ra Nodetool cho các tham số sau: version, status, ring, info, gossipinfo, máy nén dữ liệu - H, tpstats, netstats, Ccfstats, biểu đồ proxy

Ví dụ:

Để thu thập tất cả các mục mặc định, hãy nhập một trong các mục sau:

  • Sử dụng phiên bản sosreport của Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • Sử dụng phiên bản SoS của sosreport:
    sudo sosreport -o apigee-cassandra