Herramienta Sosreport

Estás consultando la documentación de Apigee Edge.
Consulta la documentación de Apigee X.
Información

Sosreport es una herramienta de recopilación de datos y diagnóstico a nivel de sistema basada en el software de código abierto SoS. Puedes usar la herramienta Sosreport para recopilar información que te ayude a depurar problemas en los nodos en los que se ejecuta un componente de Apigee. La herramienta recopila y almacena información de forma local en el sistema de archivos del nodo.

La herramienta Sosreport recopila detalles de configuración, información del sistema y de diagnóstico del sistema, y almacena los datos en un archivo. En el caso de los componentes de Apigee, Sosreport recopila lo siguiente:

  • La versión de kernel en ejecución
  • Módulos cargados
  • Archivos de configuración del sistema y el servicio

Sosreport también ejecuta programas externos para recopilar más información, como la siguiente:

  • Registros de Apigee de todos los componentes.
  • Diagnóstico del tiempo de ejecución
  • Diagnósticos de Cassandra recopilados con comandos de nodetool.

La herramienta Sosreport contiene dos comandos principales:

  • sosreport: Es el comando principal para recopilar datos y crear informes.
  • apigee-sosreport: Es una herramienta auxiliar que se usa para instalar sosreport y administrar complementos de sosreport específicos de los componentes de Apigee.

Instalación

En esta sección, se explica cómo instalar sosreport.

Si ya está instalada la versión de SoS de sosreport

Si la versión SoS original de sosreport ya está instalada en tu sistema, no configures la versión de Apigee, ya que las rutas de instalación pueden entrar en conflicto. En su lugar, copia los complementos específicos de Apigee del directorio /opt/apigee/apigee-sosreport/source/plugin al directorio site-packages de Python correspondiente con un comando como los que se muestran a continuación. Por ejemplo, para copiar agigee-mgmt.py:

  • Si usas Python 2, ingresa:
    sudo cp apigee-mgmt.py /usr/lib/python2.7/site-packages/sos/plugins/
  • Si usas Python 3, ingresa:
    sudo cp apigee-mgmt.py /usr/local/lib/python3.6/site-packages/sos/plugins/

Para verificar que se hayan instalado los complementos, ingresa

sudo sosreport --list-plugins

Si tienes preguntas, comunícate con el equipo de asistencia de Apigee.

Instala la versión de sosreport de Apigee

Si la versión SoS de sosreport aún no está instalada en tu sistema, puedes instalar la versión de Apigee si ingresas los siguientes comandos en todos los nodos en los que está instalado Edge para nube privada:

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

Para probar que sosreport esté instalado, confirma que los complementos relacionados con Apigee se encuentren en el siguiente directorio:

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

En el ejemplo anterior, pythonx.x es tu versión instalada de Python.

Como alternativa, puedes ejecutar uno de los siguientes comandos:

  • Para verificar solo los complementos específicos de Apigee, ejecuta lo siguiente:
    apigee-service apigee-sosreport diagnose -l

    Se muestra la siguiente lista de complementos específicos de 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 los complementos, usa lo siguiente:
    apigee-service apigee-sosreport diagnose -s -l
    .

    Esto muestra la siguiente lista de complementos disponibles con 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→

Cómo crear un informe

Para crear un informe con la herramienta Sosreport, ejecuta el comando sosreport con la opción de complemento requerida (consulta Complementos de Apigee). El directorio predeterminado donde se almacena el informe es tmp o /var/tmp. Para cambiar el directorio en el que se almacena el informe, pasa un directorio diferente a la opción tmp-dir. Por ejemplo, para crear un informe en el servidor de administración y guardarlo en un directorio llamado my_report-dir, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • Usa la versión de SoS de sosreport:
    sudo sosreport -o apigee-mgmt  --batch --tmp-dir=my_report-dir

El informe se almacena en un archivo .tar.xz en el directorio que especifiques con la opción tmp-dir. La ubicación del archivo .tar.xz se muestra en STDOUT, además de la suma de verificación. Por ejemplo:

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

El informe se almacena en un archivo .tar.xz en el directorio que especifiques con la opción tmp-dir. La ubicación de .tar.xz file se muestra en el archivo STDOUT, además de la suma de verificación. Por ejemplo:

A fin de obtener más opciones disponibles para sosreport, lee el archivo man:

sudo man sosreport

Complementos de Apigee

En las siguientes secciones, se describen los complementos de Apigee a la herramienta Sosreport para los siguientes componentes:

Servidor de administración

El complemento apigee-mgmt recopila la siguiente información del servidor de administración:

  • nombre de host del servidor (predeterminado)
  • cpuinfo (predeterminado)
  • meminfo (predeterminado)
  • La configuración de la máquina virtual Java (JVM), como la memoria, Djdk.tls.allowUnsafeServerCertChange, etcétera (predeterminada)
  • Registros de administración actual (predeterminado)
  • Diez resultados secuenciales en la parte superior y jstacks (predeterminado)
  • Toda la carpeta de registro de administración (opcional)
  • config-files (opcional)

Ejemplos:

Para recopilar todos los elementos predeterminados, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch my_report-dir

Para recopilar todos los elementos predeterminados y también los opcionales especificados en el comando(por ejemplo, los archivos de configuración y todos los registros), ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de 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
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

Para recopilar todo, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de 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

    También puedes ingresar lo siguiente:

    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch -a
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch -k apigee-mgmt.config-files -k apigee-mgmt.all-logs

    También puedes ingresar lo siguiente:

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

Procesador de mensajes

El complemento apigee-mp recopila la siguiente información del procesador de administración (MP):

  • Nombre de host del servidor (predeterminado)
  • cpuinfo (predeterminado)
  • meminfo (predeterminado)
  • información de compilación/versión (predeterminada)
  • Estado de apigee-all (predeterminado)
  • Detalles del servidor (predeterminado)
  • Configuración a nivel de JVM, por ejemplo, memoria, Djdk.tls.allowUnsafeServerCertChange, etc. (predeterminada)
  • Registros de MP actuales (predeterminado)
  • Diez resultados secuenciales de métricas superiores, jstacks y NIO (predeterminado)
  • Toda la carpeta de registro de MP (opcional)
  • Árbol de clasificación (opcional)
  • Volcado de montón (opcional)
  • config-files (opcional)
  • Seguimiento del entorno de ejecución (opcional y solo cuando se proporciona org:env:api:rev detail) Nota: El complemento espera 25 segundos para recolectar las solicitudes de tiempo de ejecución.

Ejemplos:

Para recopilar todos los elementos predeterminados, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mp --batch

También puedes especificar otros elementos opcionales para coleccionar, además de todos los elementos predeterminados. Por ejemplo, para especificar el volcado de montón con la marca -k apigee-mp.heap, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.heap

De manera similar, puedes especificar los siguientes elementos opcionales:

-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

Puedes especificar varias opciones en un solo comando. Por ejemplo:

  • Usa la versión de sosreport de 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
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs

Para recopilar todo, excepto el seguimiento, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -a
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -a

Router

El complemento apigee-rrt recopila la siguiente información del router:

  • Nombre de host del servidor (predeterminado)
  • cpuinfo (predeterminado)
  • meminfo (predeterminado)
  • información de compilación/versión (predeterminada)
  • Estado de apigee-all (predeterminado)
  • Detalles del servidor (predeterminado)
  • ps. Esto proporcionará opciones de configuración a nivel de JVM, por ejemplo, memoria, Djdk.tls.allowUnsafeServerCertChange, etcétera (predeterminado).
  • Registros del router actual (predeterminado)
  • Lista de nombres de archivos de vhost, incluidos los nombres de archivos incorrectos (predeterminado)
  • Toda la carpeta de registro del router (opcional)
  • config-files (opcional)

Ejemplos:

Para recopilar todos los elementos predeterminados, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch

También puedes especificar otros elementos opcionales para coleccionar, además de todos los elementos predeterminados. Por ejemplo, para especificar toda la carpeta de registro con la marca -k apigee-rrt.all-logs, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -k apigee-rrt.all-logs
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch -k apigee-rrt.all-logs

De manera similar, puedes especificar los siguientes elementos opcionales:

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

Para recopilar todo, sigue estos pasos:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch -a

Cassandra

El complemento apigee-cassandra recopila la siguiente información de los nodos de Cassandra:

  • Estadísticas de la 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"
  • Estado y versión del componente de Apigee Versión de Apigee-all y estado de Apigee-all
  • Registros de apigee-cassandra: todos los archivos de /opt/apigee/var/log/apigee-cassandra/
  • Recuento de registros de confirmación
  • Resultado del comando Top
  • Volcado de subprocesos
  • Archivos de configuración: cassandra-topology.properties, cassandra.yaml y cassandra-env.sh
  • Resultado de Nodetool para los siguientes parámetros: version, status, ring, info, gossipinfo, compactionstats -H, tpstats, netstats, cfstats y proxyhistograms

Ejemplo:

Para recopilar todos los elementos predeterminados, ingresa una de las siguientes opciones:

  • Usa la versión de sosreport de Apigee:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • Usa la versión SoS de sosreport:
    sudo sosreport -o apigee-cassandra