Инструмент Sosreport

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

Sosreport — это инструмент диагностики и сбора данных на системном уровне, основанный на программном обеспечении SoS с открытым исходным кодом. Вы можете использовать инструмент Sosreport для сбора информации, которая поможет вам отладить проблемы на узлах, на которых работает компонент Apigee. Инструмент собирает и хранит информацию локально в файловой системе узла.

Инструмент Sosreport собирает сведения о конфигурации, системную информацию и диагностическую информацию из вашей системы и сохраняет данные в архиве. Для компонентов Apigee Sosreport собирает следующее:

  • Работающая версия ядра
  • Загруженные модули
  • Файлы конфигурации системы и служб

Sosreport также запускает внешние программы для сбора дополнительной информации, в том числе:

  • Логи Apigee со всех компонентов.
  • Диагностика во время выполнения
  • Диагностика Cassandra собирается с помощью команд nodetool.

Инструмент Sosreport содержит две основные команды:

  • sosreport : основная команда для сбора данных и создания отчетов.
  • apigee-sosreport : вспомогательный инструмент, используемый для установки sosreport и управления плагинами sosreport , специфичными для компонентов Apigee.

Установка

В этом разделе объясняется, как установить sosreport .

Если версия SoS sosreport уже установлена

Если исходная версия sosreport SoS уже установлена ​​в вашей системе, не устанавливайте версию Apigee, поскольку пути установки могут конфликтовать. Вместо этого скопируйте плагины, специфичные для Apigee, из каталога /opt/apigee/apigee-sosreport/source/plugin в соответствующий каталог site-packages Python, используя команду, подобную показанной ниже. Например, чтобы скопировать 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.

Установка версии sosreport Apigee

Если версия sosreport SoS еще не установлена ​​в вашей системе, вы можете установить версию Apigee, введя следующие команды на всех узлах, где установлен Edge для частного облака:

/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 , введите одно из следующих:

  • Использование версии sosreport Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • Использование SoS-версии sosreport:
    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 для инструмента Sosreport для следующих компонентов:

Сервер управления

Плагин apigee-mgmt собирает следующую информацию с сервера управления:

  • имя хоста сервера (по умолчанию)
  • информация о процессоре (по умолчанию)
  • меминформация (по умолчанию)
  • Параметры виртуальной машины Java (JVM), такие как память, Djdk.tls.allowUnsafeServerCertChange и т. д. (по умолчанию).
  • Текущие журналы управления (по умолчанию)
  • Десять последовательных выводов top и jstacks (по умолчанию)
  • Вся папка журнала управления (необязательно)
  • конфигурационные файлы (необязательно)

Примеры:

Чтобы собрать все элементы по умолчанию, введите одно из следующих:

  • Использование версии sosreport Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    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):

  • Имя хоста сервера (по умолчанию)
  • информация о процессоре (по умолчанию)
  • меминформация (по умолчанию)
  • информация о сборке/выпуске (по умолчанию)
  • статус apigee-all (по умолчанию)
  • сведения о сервере (по умолчанию)
  • Настройки уровня JVM, например, память, Djdk.tls.allowUnsafeServerCertChange и т. д. (по умолчанию)
  • Текущие журналы MP (по умолчанию)
  • Десять последовательных выводов top, jstacks и NIO Metrics (по умолчанию)
  • Вся папка журнала MP (необязательно)
  • Дерево классификации (необязательно)
  • Дамп кучи (необязательно)
  • конфигурационные файлы (необязательно)
  • Трассировка времени выполнения (необязательно и только при наличии org:env:api:rev detail ). Примечание. Плагин ожидает 25 секунд, чтобы собрать запросы времени выполнения.

Примеры:

Чтобы собрать все элементы по умолчанию, введите одно из следующих:

  • Использование версии sosreport Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    sudo sosreport -o apigee-mp --batch -a

Маршрутизатор

Плагин apigee-rrt собирает с маршрутизатора следующую информацию:

  • Имя хоста сервера (по умолчанию)
  • информация о процессоре (по умолчанию)
  • меминформация (по умолчанию)
  • информация о сборке/выпуске (по умолчанию)
  • статус apigee-all (по умолчанию)
  • сведения о сервере (по умолчанию)
  • PS вывод. Это даст настройки уровня JVM, например, память, Djdk.tls.allowUnsafeServerCertChange и т. д. (по умолчанию).
  • Текущие журналы маршрутизатора (по умолчанию)
  • Список имен файлов vhost, включая неверные имена файлов (по умолчанию)
  • Вся папка журнала маршрутизатора (необязательно)
  • конфигурационные файлы (необязательно)

Примеры:

Чтобы собрать все элементы по умолчанию, введите одно из следующих:

  • Использование версии sosreport Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    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
  • Использование SoS-версии sosreport :
    sudo sosreport -o apigee-rrt --batch -a

Кассандра

Плагин 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
  • Дамп темы
  • Файлы конфигурации: cassandra-topology.properties , cassandra.yaml , cassandra-env.sh
  • Nodetool Вывод для следующих параметров: версия, статус, кольцо, информация, gossipinfo, Compactionstats -H, tpstats, netstats, cfstats, проксигистограммы

Пример:

Чтобы собрать все элементы по умолчанию, введите одно из следующих:

  • Использование версии sosreport Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • Использование SoS-версии sosreport :
    sudo sosreport -o apigee-cassandra