5 Herramientas para resolución de problemas

Aunque el agente de ACSLS es una aplicación relativamente simple, tiene varias dependencias, cualquiera de las cuales puede impedir que el agente responda a una solicitud snmpget o a una condición de captura.

Comprobación de estado

El estado de ejecución del agente de ACSLS se revela mediante la utilidad de servicio en su servidor Solaris o Linux.

  • En Solaris, use svcs acsnmp.

    Si acsnmp no se inicia, el daemon SMF pone a acsnmp en mantenimiento. Para recopilar pistas sobre el motivo del fallo al inicio, puede consultar el final del log de inicio de SMF. Para localizar el log de inicio, ejecute el comando svcs -l acsnmp y busque la definición de archivo log. Luego, revise las últimas líneas de ese log:

     # tail -20 /var/svc/log/application-management-acsnmp:default.log 
    
  • En Linux, use service acsnmp status.

    El comando de servicio revela solo si el agente está en ejecución o está detenido.

El archivo log de ACSNMP, AcslsAgtd.log

El archivo AcslsAgtd.log se encuentra en el directorio de nivel superior de ACSNMP. Realiza un seguimiento de los eventos de inicio y cierre, y de cualquier error importante que se encuentre durante el funcionamiento del agente de ACSLS.

El comando agent

Hay varias dependencias operativas y de configuración que se deben completar y poner en funcionamiento antes de que el agente de ACSLS pueda responder a las solicitudes SNMP. Existe un comando denominado agent en el directorio $ACSNMP_HOME/utils. Este comando es una ayuda a la resolución de problemas cuando se intenta aislar las diversas dependencias del sistema que están faltando (si falta alguna).

El comando agent status es útil para ver no solo el estado del agente de ACSLS sino también el estado de todos los servicios dependientes, incluidos:

  • El daemon del agente Net-SNMP (snmpd).

  • La aplicación ACSLS (acsls).

  • La interfaz de servidor SNMP para ACSLS (snmpssi).

  • El daemon del agente de ACSLS (AcslsAgtd).

  • La conexión de puerto al agente maestro.

El comando agent status también comprueba si hay configurada una directiva rocommunity de usuario V1, establecido para acceso de solo lectura a la MIB de ACSLS. Se debe definir rocommunity en el archivo snmpd.conf. También se requiere la definición de comunidad en el archivo AcslsAgtd.cfg, pero solo si se encuentran comunidades múltiples en snmpd.conf y solo se debe utilizar una comunidad específica en el agente de ACSLS.

Una vez que se comprueban las dependencias y se encuentra una directiva rocommunity válida, el comando agent status continúa con la ejecución del agente mediante un comando snmpget que solicita la versión del agente de ACSLS. Un resultado correcto de esta prueba muestra la versión de software del agente.

El comando agent status también busca destinos de captura configurados. Prueba el acceso de red a cada host de captura definido y muestra el resultado. Si hay un listener configurado y en ejecución en el host local, se prueba la conexión con el puerto de captura y se muestra el resultado.

Finalmente, el comando agent status ejecuta snmpget para obtener la difusión del mensaje de captura más reciente mediante el agente de ACSLS.

La utilidad agent también se puede usar como un comando de inicio alternativo. Si usa agent start para iniciar el agente de ACSLS, podrá ver el progreso de la utilidad a medida que se inicia. Si falta alguna dependencia, se muestra durante la secuencia de inicio. Este comando agent start no se puede usar cuando acsnmp está en línea para la SMF de Solaris o para la utilidad de servicio de Linux.

Después de comprobar el agente, puede usar los comandos snmp directamente. Use translate -n para capturar los OID específicos de su interés, luego ejecute un comando snmpget para ese OID. Por ejemplo, si rocommunity es acs_user, revele la cadena de la versión de software del agente ejecutando snmpget con el OID numérico correspondiente:

# snmpget -v1 -c acs_user localhost 1.3.6.1.4.1.1211.1.11.1.1.0