Herramienta Sosreport

Estás viendo la documentación de Apigee Edge.
Ir a la documentación de Apigee X.
info

Sosreport es una herramienta de diagnóstico y recopilación de datos a nivel del 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 datos 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 del kernel en ejecución
  • Módulos cargados
  • Archivos de configuración del sistema y del 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 entorno 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 para 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 original de SoS 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, haz lo siguiente:

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

Para verificar que se instalaron 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 de SoS de sosreport aún no está instalada en tu sistema, puedes instalar la versión de Apigee ingresando los siguientes comandos en todos los nodos en los que está instalado Edge para Private Cloud:

/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

donde pythonx.x es la versión de Python que tienes instalada.

Como alternativa, puedes ejecutar uno de los siguientes comandos:

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

    Esto 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, haz lo siguiente:
    apigee-service apigee-sosreport diagnose -s -l

    Esto devuelve 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 en el que se almacena el informe es tmp o /var/tmp. Puedes cambiar el directorio en el que se almacena el informe si pasas un directorio diferente a la opción tmp-dir. Por ejemplo, para crear un informe sobre el servidor de administración y guardarlo en un directorio llamado my_report-dir, ingresa una de las siguientes opciones:

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf -o apigee-mgmt  --batch --tmp-dir=my_report-dir
  • Cómo usar 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 especificas con la opción tmp-dir. La ubicación del archivo .tar.xz se muestra en STDOUT, así como 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 especificas con la opción tmp-dir. La ubicación del archivo .tar.xz file se muestra en STDOUT, así como la suma de verificación. Por ejemplo:

Para ver 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 para la herramienta Sosreport de 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)
  • Configuración de la máquina virtual Java (JVM), como la memoria, Djdk.tls.allowUnsafeServerCertChange, etcétera (predeterminada)
  • Registros de administración actuales (predeterminado)
  • Diez salidas secuenciales de top y jstacks (predeterminado)
  • Carpeta completa de registros de administración (opcional)
  • config-files (opcional)

Ejemplos:

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

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mgmt --batch my_report-dir
  • Cómo usar la versión de SoS de sosreport:
    sudo sosreport -o apigee-mgmt --batch my_report-dir

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

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    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
  • Cómo usar la versión de 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:

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    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

    Como alternativa, puedes ingresar lo siguiente:

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

    Como alternativa, puedes ingresar lo siguiente:

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

Message Processor

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 o versión (predeterminado)
  • Estado de apigee-all (predeterminado)
  • Detalles del servidor (predeterminado)
  • Configuración a nivel de la JVM, por ejemplo, memoria, Djdk.tls.allowUnsafeServerCertChange, etc. (predeterminada)
  • Registros de MP actuales (predeterminado)
  • Diez salidas secuenciales de los principales subprocesos, jstacks y métricas de NIO (predeterminado)
  • Carpeta de registro de MP completa (opcional)
  • Árbol de clasificación (opcional)
  • Volcado de montón (opcional)
  • config-files (opcional)
  • Registro de seguimiento del tiempo de ejecución (opcional y solo cuando se proporciona org:env:api:rev detail) Nota: El complemento espera 25 segundos para recopilar las solicitudes de tiempo de ejecución.

Ejemplos:

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

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch
  • Cómo usar la versión de SoS de sosreport:
    sudo sosreport -o apigee-mp --batch

También puedes especificar elementos opcionales adicionales para recopilar, 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:

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.heap
  • Cómo usar la versión de 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:

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs
  • Cómo usar la versión de SoS de sosreport:
    sudo sosreport -o apigee-mp --batch -k apigee-mp.deployments -k apigee-mp.all-logs

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

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-mp --batch -a
  • Cómo usar la versión de 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 o versión (predeterminado)
  • Estado de apigee-all (predeterminado)
  • Detalles del servidor (predeterminado)
  • Resultado de ps Esto proporcionará la configuración a nivel de la 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)
  • Carpeta completa de registro del router (opcional)
  • config-files (opcional)

Ejemplos:

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

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch
  • Cómo usar la versión de SoS de sosreport:
    sudo sosreport -o apigee-rrt --batch

También puedes especificar elementos opcionales adicionales para recopilar, además de todos los elementos predeterminados. Por ejemplo, para especificar la carpeta de registro completa, usa la marca -k apigee-rrt.all-logs y, luego, ingresa una de las siguientes opciones:

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -k apigee-rrt.all-logs
  • Cómo usar la versión de 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, haz lo siguiente:

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-rrt --batch -a
  • Cómo usar la versión de 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 en /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
  • Salida de Nodetool para los siguientes parámetros: version, status, ring, info, gossipinfo, compactionstats -H, tpstats, netstats, cfstats, proxyhistograms

Ejemplo:

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

  • Con la versión de sosreport de Apigee, haz lo siguiente:
    sudo sosreport --config-file /opt/apigee/apigee-sosreport/conf/sos.conf  -o apigee-cassandra
  • Cómo usar la versión de SoS de sosreport:
    sudo sosreport -o apigee-cassandra