Ferramenta Sosreport

Você está vendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X.
informações

O Sosreport é uma ferramenta de diagnóstico e coleta de dados no nível do sistema, baseada no software de código aberto SoS. É possível usar a ferramenta Sosreport para coletar informações que ajudam a depurar problemas em nós em que um componente da Apigee está em execução. A ferramenta coleta e armazena informações localmente no sistema de arquivos do nó.

A ferramenta Sosreport coleta detalhes de configuração, informações do sistema e informações de diagnóstico do seu sistema e armazena os dados em um arquivo. Para componentes da Apigee, o Sosreport coleta o seguinte:

  • A versão do kernel em execução
  • Módulos carregados
  • Arquivos de configuração do sistema e de serviços

O Sosreport também executa programas externos para coletar mais informações, incluindo:

  • Registros da Apigee de todos os componentes.
  • Diagnóstico do ambiente de execução
  • Diagnósticos do Cassandra coletados usando comandos do nodetool.

A ferramenta Sosreport contém dois comandos principais:

  • sosreport: o comando principal para coletar dados e criar relatórios.
  • apigee-sosreport: uma ferramenta auxiliar usada para instalar sosreport e gerenciar plug-ins sosreport específicos para componentes da Apigee.

Instalação

Esta seção explica como instalar o sosreport.

Se a versão SoS de sosreport já estiver instalada

Se a versão SoS original de sosreport já estiver instalada no sistema, não configure a versão da Apigee, porque os caminhos de instalação podem entrar em conflito. Em vez disso, copie os plug-ins específicos da Apigee do diretório /opt/apigee/apigee-sosreport/source/plugin para o diretório site-packages apropriado do Python usando um comando como os mostrados abaixo. Por exemplo, para copiar agigee-mgmt.py:

  • Se você estiver usando o Python 2, digite:
    sudo cp apigee-mgmt.py /usr/lib/python2.7/site-packages/sos/plugins/
  • Se você estiver usando o Python 3, digite:
    sudo cp apigee-mgmt.py /usr/local/lib/python3.6/site-packages/sos/plugins/

Para verificar se os plug-ins foram instalados, digite

sudo sosreport --list-plugins

Se você tiver dúvidas, entre em contato com o suporte da Apigee.

Instalando a versão da Apigee de sosreport

Se a versão SoS do sosreport ainda não estiver instalada no seu sistema, instale a versão da Apigee inserindo os seguintes comandos em todos os nós em que o Edge para nuvem privada está instalado:

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

Para testar se o sosreport está instalado, confirme se os plug-ins relacionados à Apigee estão localizados no seguinte diretório:

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

em que pythonx.x é a versão instalada do Python.

Como alternativa, execute um dos seguintes comandos:

  • Para verificar apenas plug-ins específicos da Apigee:
    apigee-service apigee-sosreport diagnose -l

    Isso retorna a seguinte lista de plug-ins específicos da 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
  • Para verificar todos os plug-ins:
    apigee-service apigee-sosreport diagnose -s -l

    Isso retorna a seguinte lista de plug-ins disponíveis com o 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→

Como criar um relatório

Para criar um relatório usando a ferramenta Sosreport, execute o comando sosreport com a opção de plug-in necessária. Consulte Plug-ins da Apigee. O diretório padrão em que o relatório é armazenado é tmp ou /var/tmp. Para alterar o diretório em que o relatório é armazenado, transmita um diretório diferente para a opção tmp-dir. Por exemplo, para criar um relatório no servidor de gerenciamento e salvá-lo em um diretório chamado my_report-dir, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • Usando a versão SoS do sosreport:
    sudo sosreport -o apigee-mgmt  --batch --tmp-dir=my_report-dir

O relatório é armazenado em um arquivo .tar.xz no diretório especificado com a opção tmp-dir. O local do arquivo .tar.xz é mostrado em STDOUT, assim como a soma de verificação. Exemplo:

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

O relatório é armazenado em um arquivo .tar.xz no diretório especificado com a opção tmp-dir. O local do .tar.xz file é mostrado em STDOUT, assim como a soma de verificação. Exemplo:

Para ver mais opções disponíveis para sosreport, leia o arquivo man:

sudo man sosreport

Plug-ins da Apigee

As seções a seguir descrevem os plug-ins da Apigee para a ferramenta Sosreport para os seguintes componentes:

Servidor de gerenciamento

O plug-in apigee-mgmt coleta as seguintes informações do servidor de gerenciamento:

  • nome do host do servidor (padrão)
  • cpuinfo (padrão)
  • meminfo (padrão)
  • Configurações de máquina virtual Java (JVM), como memória, Djdk.tls.allowUnsafeServerCertChange e assim por diante (padrão)
  • Registros de gerenciamento atuais (padrão)
  • Saída de 10 principais sequenciais e jstacks (padrão)
  • Toda a pasta de registros de gerenciamento (opcional)
  • config-files (opcional)

Exemplos:

Para coletar todos os itens padrão, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch my_report-dir

Para coletar todos os itens padrão e também os itens opcionais especificados no comando, por exemplo, arquivos de configuração e todos os registros, digite uma das seguintes opções:

  • Usando a versão da Apigee de 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
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

Para coletar tudo, insira uma das seguintes opções:

  • Usando a versão da Apigee de 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

    Também é possível inserir:

    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -a
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

    Também é possível inserir:

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

processador de mensagens

O plug-in apigee-mp coleta as seguintes informações do processador de gerenciamento (MP, na sigla em inglês):

  • Nome do host do servidor (padrão)
  • cpuinfo (padrão)
  • meminfo (padrão)
  • buildinfo/release info (padrão)
  • status apigee-all (padrão)
  • detalhes do servidor (padrão)
  • Configurações de nível da JVM, por exemplo, memória, Djdk.tls.allowUnsafeServerCertChange etc. (padrão)
  • Registros MP atuais (padrão)
  • Dez parte superior sequencial, jstacks e saída de métricas NIO (padrão)
  • Pasta de registros MP inteira (opcional)
  • Árvore de classificação (opcional)
  • Despejo de heap (opcional)
  • config-files (opcional)
  • Rastreamento do ambiente de execução (opcional e apenas quando org:env:api:rev detail é fornecido). Observação: o plug-in aguarda 25 segundos para coletar as solicitações de tempo de execução.

Exemplos:

Para coletar todos os itens padrão, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mp --batch

Você também pode especificar outros itens opcionais para coletar, além de todos os itens padrão. Por exemplo, para especificar o heap dump usando a sinalização -k apigee-mp.heap, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.heap

Da mesma forma, é possível especificar os seguintes itens opcionais:

-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

Você pode especificar várias opções em um único comando. Exemplo:

  • Usando a versão da Apigee de 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
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs

Para coletar tudo, exceto o trace, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -a
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -a

Roteador

O plug-in apigee-rrt coleta as seguintes informações do roteador:

  • Nome do host do servidor (padrão)
  • cpuinfo (padrão)
  • meminfo (padrão)
  • buildinfo/release info (padrão)
  • status apigee-all (padrão)
  • detalhes do servidor (padrão)
  • ps. Isso fornecerá configurações no nível da JVM, por exemplo, memória, Djdk.tls.allowUnsafeServerCertChange e assim por diante (padrão).
  • Registros atuais do roteador (padrão)
  • Lista de nomes de arquivos vhost, incluindo nomes de arquivos inválidos (padrão)
  • Pasta de registros do roteador inteira (opcional)
  • config-files (opcional)

Exemplos:

Para coletar todos os itens padrão, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch

Você também pode especificar outros itens opcionais para coletar, além de todos os itens padrão. Por exemplo, para especificar toda a pasta de registros usando a sinalização -k apigee-rrt.all-logs, digite uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -k apigee-rrt.all-logs
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch -k apigee-rrt.all-logs

Da mesma forma, é possível especificar os seguintes itens opcionais:

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

Para coletar tudo:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch -a

Cassandra

O plug-in apigee-cassandra coleta as seguintes informações dos nós do Cassandra:

  • Estatísticas da máquina:
    "hostname -i"
    "cat /proc/cpuinfo"
    "cat /proc/meminfo"
    "ulimit -a"
    "ps auxw"
    "df -kh"
    "du -sh"
    "netstat -ntlpu"
    "free -h"
    "ifconfig -h"
    "ps -ef"
  • Status e versão do componente da Apigee Versão "apigee-all" e "apigee-all"
  • Registros da apigee-cassandra: todos os arquivos em /opt/apigee/var/log/apigee-cassandra/
  • Contagem de registros de confirmação
  • Saída do comando "Superior"
  • Despejo de linhas de execução
  • Arquivos de configuração: cassandra-topology.properties, cassandra.yaml, cassandra-env.sh
  • Saída do Nodetool para os seguintes parâmetros: version, status, ring, info, gossipinfo, compactionstats -H, tpstats, netstats, cfstats, proxyhistograms

Exemplos

Para coletar todos os itens padrão, insira uma das seguintes opções:

  • Usando a versão da Apigee de sosreport:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • Usando a versão SoS de sosreport:
    sudo sosreport -o apigee-cassandra