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

Công cụ Sosreport thu thập chi tiết cấu hình, thông tin hệ thống và thông tin chẩn đoán từ hệ thống của bạn, đồng thời lưu trữ dữ liệu trong một bản lưu trữ. Đối với các thành phần Apigee, Sosreport thu thập những dữ liệu sau:

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

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ả thành phần.
  • Chẩn đoán trong thời gian chạy
  • Thông tin chẩn đoán Cassandra được thu thập bằng các lệnh nodetool.

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ụ trợ để cài đặt sosreport và quản lý các trình bổ trợ sosreport 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 phiên bản SoS của sosreport đã được cài đặt

Nếu phiên bản SoS gốc của sosreport đã được cài đặt trên hệ thống, vui lòng 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. 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 vào thư mục site-packages Python thích hợp bằng một lệnh như các lệnh dưới đây. 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 các 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.

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

Nếu phiên bản SoS của sosreport chưa được cài đặt trên hệ thống, 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 vào tất cả các nút đã cài đặt Edge for Private Cloud:

/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 hay chưa, hãy xác nhận rằng các trình bổ trợ liên quan đến API nằm trong thư mục sau:

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

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

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

  • Cách chỉ xác minh 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ợ có sẵn với sosreport sau đây:

    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 phần Trình bổ trợ API). 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 báo cáo trên Máy chủ quản lý và lưu báo cáo đó vào thư mục có tên my_report-dir, hãy nhập một trong các nội dung sau:

  • Đang 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 này được lưu trữ trong tệp .tar.xz trong thư mục mà bạn chỉ định bằng cách sử dụng 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 này được lưu trữ trong tệp .tar.xz trong thư mục mà bạn chỉ định bằng cách sử dụng 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 cho các thành phần sau:

Máy chủ quản lý

Trình bổ trợ apigee-mgmt thu thập những 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 của 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 kết quả đầu ra tuần tự trên cùng và jstacks (mặc định)
  • Toàn bộ thư mục nhật ký quản lý (không bắt buộc)
  • config-tệp (không bắt buộc)

Ví dụ:

Để thu thập tất cả vật phẩm mặc định, hãy nhập một trong những thông tin sau:

  • Đang 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ả mục mặc định và cả(các) mục không bắt buộc được chỉ định trong lệnh, ví dụ: tệp cấu hình và tất cả nhật ký, hãy nhập một trong những mục sau:

  • Đang 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ứ, hãy nhập một trong những thông tin sau:

  • Đang 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

Bộ xử lý thư

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

  • Tên máy chủ (mặc định)
  • cpuinfo (mặc định)
  • meminfo (mặc định)
  • thông tin về bản dựng/bản phát hành (mặc định)
  • trạng thái apigee-all (mặc định)
  • thông tin chi tiết về máy chủ (mặc định)
  • Các chế độ cài đặt cấp máy ảo Java, ví dụ: bộ nhớ, Djdk.tls.allowUnsafeServerCertChange, v.v. (mặc định)
  • Nhật ký MP hiện tại (mặc định)
  • Mười tuần tự hàng đầu, jstacks và đầu ra Chỉ số NIO (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)
  • config-tệp (không bắt buộc)
  • Dấu vết thời gian chạy (không bắt buộc và chỉ khi cung cấp 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 thời gian chạy.

Ví dụ:

Để thu thập tất cả vật phẩm mặc định, hãy nhập một trong những thông tin sau:

  • Đang 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 bổ sung không bắt buộ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, bằng cờ -k apigee-mp.heap, hãy nhập một trong những nội dung sau:

  • Đang 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 tuỳ chọn 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ụ:

  • Đang 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ông tin ngoại trừ dấu vết, hãy nhập một trong những nội dung sau:

  • Đang 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 những 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)
  • thông tin về bản dựng/bản phát hành (mặc định)
  • trạng thái apigee-all (mặc định)
  • thông tin chi tiết về máy chủ (mặc định)
  • ps. 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 cả 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)
  • config-tệp (không bắt buộc)

Ví dụ:

Để thu thập tất cả vật phẩm mặc định, hãy nhập một trong những thông tin sau:

  • Đang 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 bổ sung không bắt buộ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 những nội dung sau:

  • Đang 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 tuỳ chọn sau:

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

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

  • Đang 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 những thông tin sau từ các 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à trạng thái của thành phần Apigee về phiên bản API và tất cả phiên bản
  • Nhật ký apigee-cassandra: Tất cả tệp trong /opt/apigee/var/log/apigee-cassandra/
  • Số lượng nhật ký cam kết
  • 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 thông số sau: phiên bản, trạng thái, đổ chuông, thông tin, gossipinfo, nénionstats -H, tpstats, netstats, cfstats, proxyhistograms

Ví dụ:

Để thu thập tất cả vật phẩm mặc định, hãy nhập một trong những thông tin sau:

  • Đang 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