Narzędzie Sosreport

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Sosreport to działające na poziomie systemu narzędzie do diagnostyki i zbierania danych, które korzysta z oprogramowania typu open source SoS. Narzędzie Sosreport pozwala zbierać informacje ułatwiające debugowanie problemów w węzłach, w których działa komponent Apigee. Narzędzie gromadzi i przechowuje informacje lokalnie w systemie plików węzła.

Narzędzie Sosreport zbiera z Twojego systemu szczegóły konfiguracji, informacje o systemie i dane diagnostyczne, a następnie zapisuje dane w archiwum. W przypadku komponentów Apigee Sosreport gromadzi te informacje:

  • Uruchomiona wersja jądra
  • Wczytane moduły
  • Pliki konfiguracji systemu i usługi

Sosreport uruchamia też zewnętrzne programy, aby zbierać więcej informacji, w tym:

  • Logi Apigee ze wszystkich komponentów.
  • Diagnostyka środowiska wykonawczego
  • Dane diagnostyczne Cassandra gromadzone za pomocą poleceń narzędzia nodetool.

Narzędzie Sosreport zawiera 2 główne polecenia:

  • sosreport: główne polecenie służące do zbierania danych i tworzenia raportów.
  • apigee-sosreport: narzędzie pomocnicze służące do instalowania wtyczki sosreport i zarządzania wtyczkami sosreport związanymi z komponentami Apigee.

Instalacja

W tej sekcji dowiesz się, jak zainstalować sosreport.

Jeśli wersja SoS systemu sosreport jest już zainstalowana

Jeśli w systemie jest już zainstalowana pierwotna wersja SoS systemu sosreport, nie konfiguruj wersji Apigee, ponieważ ścieżki instalacji mogą powodować konflikt. Zamiast tego skopiuj wtyczki typowe dla Apigee z katalogu /opt/apigee/apigee-sosreport/source/plugin do odpowiedniego katalogu site-packages Pythona, używając polecenia takiego jak te poniżej. Aby na przykład skopiować agigee-mgmt.py:

  • Jeśli korzystasz z Pythona 2, wpisz:
    sudo cp apigee-mgmt.py /usr/lib/python2.7/site-packages/sos/plugins/
  • Jeśli używasz Pythona 3, wpisz:
    sudo cp apigee-mgmt.py /usr/local/lib/python3.6/site-packages/sos/plugins/

Aby sprawdzić, czy wtyczki zostały zainstalowane, wpisz

sudo sosreport --list-plugins

Jeśli masz pytania, skontaktuj się z zespołem pomocy Apigee.

Instaluję wersję sosreport Apigee

Jeśli wersja SoS systemu sosreport nie jest jeszcze zainstalowana w Twoim systemie, możesz zainstalować wersję Apigee, wpisując te polecenia we wszystkich węzłach, w których zainstalowano Edge for Private Cloud:

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

Aby sprawdzić, czy zainstalowano sosreport, sprawdź, czy wtyczki powiązane z Apigee znajdują się w tym katalogu:

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

gdzie pythonx.x to zainstalowana wersja Pythona.

Możesz też uruchomić jedno z tych poleceń:

  • Aby zweryfikować tylko wtyczki typowe dla Apigee:
    apigee-service apigee-sosreport diagnose -l

    Spowoduje to wyświetlenie poniższej listy wtyczek typowych dla 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
  • Aby sprawdzić wszystkie wtyczki:
    apigee-service apigee-sosreport diagnose -s -l

    Wyświetli się lista wtyczek dostępnych dzięki 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→

Tworzenie raportu

Aby utworzyć raport za pomocą narzędzia Sosreport, uruchom polecenie sosreport z odpowiednią opcją wtyczki (patrz wtyczki Apigee). Domyślny katalog, w którym jest przechowywany raport, to tmp lub /var/tmp. Katalog, w którym jest przechowywany raport, możesz zmienić, przekazując inny katalog do opcji tmp-dir. Aby na przykład utworzyć raport na serwerze zarządzania i zapisać go w katalogu o nazwie my_report-dir, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • Korzystanie z sosreport w wersji Sos:
    sudo sosreport -o apigee-mgmt  --batch --tmp-dir=my_report-dir

Raport jest przechowywany w pliku .tar.xz w katalogu, który określisz za pomocą opcji tmp-dir. Lokalizacja pliku .tar.xz jest wyświetlana w formacie STDOUT oraz w sumie kontrolnej. Na przykład:

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

Raport jest przechowywany w pliku .tar.xz w katalogu, który określisz za pomocą opcji tmp-dir. Lokalizacja obiektu .tar.xz file jest wyświetlana w STDOUT wraz z sumą kontrolną. Na przykład:

Więcej dostępnych opcji dotyczących sosreport znajdziesz w pliku man:

sudo man sosreport

Wtyczki Apigee

W tych sekcjach opisano wtyczki Apigee przesyłane do narzędzia Sosreport w przypadku tych komponentów:

Serwer zarządzania

Wtyczka apigee-mgmt zbiera z serwera zarządzania te informacje:

  • nazwa hosta serwera (domyślna)
  • cpuinfo (domyślnie)
  • meminfo (domyślnie)
  • Ustawienia maszyny wirtualnej Java (JVM), takie jak pamięć, Djdk.tls.allowUnsafeServerCertChange itd. (domyślne)
  • Logi bieżącego zarządzania (domyślnie)
  • 10 sekwencyjnych danych wyjściowych typu top i jstacks (domyślnie)
  • Cały folder dziennika zarządzania (opcjonalnie)
  • config-files (opcjonalnie)

Przykłady:

Aby zbierać wszystkie elementy domyślne, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-mgmt --batch my_report-dir

Aby zbierać wszystkie elementy domyślne, a także opcjonalne elementy określone w poleceniu, na przykład pliki konfiguracji i wszystkie logi, wpisz jedną z tych wartości:

  • Używasz wersji 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 w wersji SoS:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

Aby zbierać wszystko, wpisz jedną z tych wartości:

  • Używasz wersji 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

    Możesz też wpisać:

    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -a
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

    Możesz też wpisać:

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

procesor komunikatów

Wtyczka apigee-mp zbiera te informacje z procesora zarządzania (MP):

  • Nazwa hosta serwera (domyślna)
  • cpuinfo (domyślnie)
  • meminfo (domyślnie)
  • informacje o kompilacji/wersji (domyślnie)
  • Stan apigee-all (domyślny)
  • szczegóły serwera (domyślnie)
  • Ustawienia na poziomie JVM, na przykład pamięć, Djdk.tls.allowUnsafeServerCertChange itp. (domyślne)
  • Bieżące zapisy MP (domyślnie)
  • Dziesięć sekwencyjnych danych wyjściowych, jstacks i NIO Metrics (domyślnie)
  • Cały folder dzienników MP (opcjonalnie)
  • Drzewo klasyfikacji (opcjonalnie)
  • Zrzut sterty (opcjonalnie)
  • config-files (opcjonalnie)
  • Śledzenie środowiska wykonawczego (opcjonalnie i tylko wtedy, gdy podany jest org:env:api:rev detail). Uwaga: wtyczka czeka na zebranie żądań środowiska wykonawczego przez 25 sekund.

Przykłady:

Aby zbierać wszystkie elementy domyślne, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-mp --batch

Oprócz wszystkich elementów domyślnych możesz też określić dodatkowe, opcjonalne elementy do zbierania. Aby na przykład określić zrzut stosu za pomocą flagi -k apigee-mp.heap, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.heap

Podobnie możesz określić te elementy opcjonalne:

-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

W jednym poleceniu możesz określić wiele opcji. Na przykład:

  • Używasz wersji 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 w wersji SoS:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs

Aby zbierać wszystko poza logiem czasu, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -a
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-mp --batch -a

Router

Wtyczka apigee-rrt zbiera z routera te informacje:

  • Nazwa hosta serwera (domyślna)
  • cpuinfo (domyślnie)
  • meminfo (domyślnie)
  • informacje o kompilacji/wersji (domyślnie)
  • Stan apigee-all (domyślny)
  • szczegóły serwera (domyślnie)
  • dane wyjściowe ps. Spowoduje to udostępnienie ustawień na poziomie JVM, na przykład pamięci, pliku Djdk.tls.allowUnsafeServerCertChange itd. (domyślne).
  • Logi bieżącego routera (domyślnie)
  • Lista nazw plików vhost, w tym nieprawidłowe nazwy plików (domyślnie)
  • Cały folder dziennika routera (opcjonalnie)
  • config-files (opcjonalnie)

Przykłady:

Aby zbierać wszystkie elementy domyślne, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-rrt --batch

Oprócz wszystkich elementów domyślnych możesz też określić dodatkowe, opcjonalne elementy do zbierania. Aby na przykład określić cały folder logów przy użyciu flagi -k apigee-rrt.all-logs, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -k apigee-rrt.all-logs
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-rrt --batch -k apigee-rrt.all-logs

Podobnie możesz określić te elementy opcjonalne:

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

Aby zbierać wszystko:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-rrt --batch -a

Cassandra

Wtyczka apigee-cassandra zbiera z węzłów Cassandra te informacje:

  • Statystyki maszyny:
    "hostname -i"
    "cat /proc/cpuinfo"
    "cat /proc/meminfo"
    "ulimit -a"
    "ps auxw"
    "df -kh"
    "du -sh"
    "netstat -ntlpu"
    "free -h"
    "ifconfig -h"
    "ps -ef"
  • Stan i wersja komponentu Apigee-all oraz stan apigee-all
  • Logi apigee-cassandra: Wszystkie pliki w domenie /opt/apigee/var/log/apigee-cassandra/
  • Liczba logów zatwierdzenia
  • Dane wyjściowe polecenia Top
  • Zrzut wątku
  • Pliki konfiguracji: cassandra-topology.properties, cassandra.yaml, cassandra-env.sh
  • Dane wyjściowe narzędzia Nodetool dla następujących parametrów: wersja, stan, pierścień, info, plotki, dane compactionstats -H, tpstats, netstats, cfstats, proxyhistograms

Przykład:

Aby zbierać wszystkie elementy domyślne, wpisz jedną z tych wartości:

  • Używasz wersji Apigee sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • sosreport w wersji SoS:
    sudo sosreport -o apigee-cassandra