Resolución de problemas de repositorio de sesiones de contenedor SIP

Al solucionar problemas del repositorio de sesiones de contenedor SIP, es recomendable que utilice los detalles de sesión SIP para realizar el volcado en un archivo de rastreo específico.

Acerca de esta tarea

Puede utilizar el programa de utilidad de volcado de memoria de sesión SIP para ayudar a depurar problemas relacionados con las sesiones de contenedor SIP. El contenedor SIP utiliza el método SipContainerMBean para llevar a cabo varias operaciones de tipo de capacidad de servicio en el contenedor SIP, incluida la desactivación temporal de servidor a través de wsadmin (interfaz de línea de mandatos). Esta tarea describe cómo se puede utilizar el método SipContainerMBean para volcar información de sesión de aplicaciones SIP y de sesión SIP contenida en el repositorio de sesión en memoria para contenedores SIP. Al configurar el método SIPContainerMBean para utilizar varios métodos de rastreo, puede especificar los detalles de sesión SIP para volcarlos al archivo de rastreo especificado.

Cuando se inician los métodos de volcado de sesión utilizando scripts wsadmin, la información solicitada sobre las sesiones se imprime, por defecto, en SystemOut.log o se envía a una fuente predefinida, si se establece a través del método setDumpMethod.

Si utiliza métodos de volcado de sesión sucintos, sólo se imprimirán los ID de sesión para cada ejecución de método de volcado.

Si utiliza métodos de volcado de sesión detallados, ocurrirá lo siguiente:
  • Los detalles de usuario de transacción, junto con los detalles de sesión SIP, si existen, se imprimen para cada ejecución de método de volcado.
  • Los únicos atributos que se vuelcan en el archivo de rastreo son los atributos que la especificación JSR 289 permite exponer.
  • Los métodos detallados imprimen la información siguiente en el archivo de rastreo: nombre de aplicación, ID de llamada, estado de diálogo, hora de creación, nombres de atributo.

Las impresiones de rastreo tienen lugar por aplicación SIP; por lo tanto, la clasificación de todas las estructuras de datos de sesión SIP se produce antes de la impresión. Puede utilizar el recurso de volcado SIPContainerMBean para un servidor de producción asignando el trabajo a una hebra de prioridad inferior para que todos los volcados se encuentren en una hebra separada y el rastreo no afecte a la latencia de procesamiento de llamada del sistema general.

El volcado distingue entre un usuario de transacción que tiene una sesión SIP creada frente a un usuario de transacción que no tiene ningún objeto SipSession. También incluido en el volcado, de modo delineado, se encuentran las sesiones SIP que ya no existen, las que ya no son válidas o las que existen en el momento de la instantánea de rastreo.

Tabla 1. Métodos SipContainerMBean sucintos utilizados para volcar información de sesión SIP. Los siguientes métodos SipContainerMBean sucintos se utilizan para volcar ID de sesión SIP.
Método Descripción
dumpAllSASIds() Imprime un número de todas las sesiones de aplicación SIP y los ID de sesión de aplicación SIP.
dumpAllTUSipSessionIds() Imprime un número de usuarios de transacción y los ID de sesión SIP dentro del usuario de transacción, si existe uno.
Tabla 2. Métodos SipContainerMBean detallados utilizados para volcar información de sesión SIP. Los siguientes métodos SipContainerMBean detallados se utilizan para volcar detalles de sesión SIP.
Método Descripción
dumpAllSASDetails() Imprime un número de todos los detalles de aplicación SIP y los ID de sesión de aplicación SIP.
dumpAllTUSipSessionDetails() Imprime un número de usuarios de transacción y los detalles de los ID de sesión SIP dentro del usuario de transacción, si existe uno.
dumpSASDetails(String sasId) Imprime los detalles de la sesión de aplicación SIP especificados por el parámetro sasId.
dumpSipSessionDetails(String sessionId) Imprime los detalles de la sesión SIP especificados por el parámetro sessionId.
Nota: Utilice la información siguiente para ayudar a analizar la salida de impresión :
  • Para todas las salidas de impresión, la primera línea proporciona un nombre de aplicación y un número de registros.
  • El delimitador entre la salida es un TAB.
  • El delimitador entre los atributos de la sesión es un ; (punto y coma).

Procedimiento

  1. Inicie el cliente de scripts wsadmin.
  2. Determine si desea utilizar los métodos SipContainerMBean sucintos o detallados.
  3. Establezca la variable, apps, en todos los objetos del método SipContainerMBean. Por ejemplo:
    • En Jacl:
      set apps [$AdminControl queryNames type=SipContainerMBean,*]
    • Utilización de Jython:
      apps = AdminControl.queryNames('WebSphere:type=SipContainerMBean,*')
    Este mandato devuelve la salida siguiente:
    • En Jacl:
      wsadmin>set apps [$AdminControl queryNames type=SipContainerMBean,*]
      WebSphere:cell=<cell_name>,version=<WAS_version>,spec=1.0,name=SipContainerMBeanId,mbeanIdentifier=SipContainerMBeanId,
      type=SipContainerMBean,node=<node_name>,process=server1
    • Utilización de Jython:
      wsadmin>apps = AdminControl.queryNames('WebSphere:type=SipContainerMBean,*')
      	wsadmin>print apps
      WebSphere:cell=<cell_name>,version=<WAS_version>,spec=1.0,name=SipContainerMBeanId,mbeanIdentifier=SipContainerMBeanId,
      type=SipContainerMBean,node=<node_name>,process=server1
  4. (Opcional) Utilice el método SipContainerMBean para especificar que desea que la salida de rastreo vaya a un archivo específico. Para utilizar el método SipContainerMBean para configurar un método de salida, llame al método setDumpMethod antes de llamar a los métodos de volcado de memoria sucintos o detallados; por ejemplo:
    setDumpMethod(String_method, String_description) 
    El parámetro string_method especifica que se utiliza un método de salida de archivo y el parámetro string_description especifica la vía de acceso del archivo, incluido el nombre de archivo. Este método devuelve una indicación de serie de éxito o anomalía. Este método sólo soporta el establecimiento de un archivo específico para la impresión; por ejemplo:
    setDumpMethod("file", “/opt/IBM/output.log”)
    El valor del parámetro archivo indica que se imprimen los datos de rastreo en un archivo y /opt/IBM/output.log indica la vía de acceso completa al archivo para su impresión.

    Si no especifica este método opcional, la salida se envía al archivo SystemOut.log.

  5. Inicie el método de recurso de volcado de memoria SIP que desee en el método SipContainerMBean. Especifique uno de los métodos SipContainerMBean sucintos o detallados; por ejemplo:
    • En Jacl:
      $AdminControl invoke $apps<method_name>
    • Utilización de Jython:
      AdminControl.invoke (apps, "<method_name>")
  6. (Opcional) Obtenga una lista de todos los métodos SipContainerMBean en uso. Por ejemplo:
    • En Jacl:
      $Help all $apps
    • Utilización de Jython:
      print Help.all(apps)
    Este mandato devuelve la salida siguiente:
    Name: WebSphere:cell=<cell_name>,version=<WAS_version>,spec=1.0,name=SipContainerMBeanId,mbeanIdentifier=SipContainerMBeanId,type=SipContainerMBean,node=<node_name>,process=<server_name>
    Description: null 
    Class name: javax.management.modelmbean.RequiredModelMBean
    
    Attribute Type Access 
    
    Operation
    void quiesce(boolean)
    void setWeight(int)
    int getWeight()
    int dumpAllSASIds()
    int dumpAllTUSipSessionIds()
    int dumpAllSASDetails()
    int dumpAllTUSipSessionDetails()
    int dumpSASDetails(java.lang.String)
    int dumpSipSessionDetails(java.lang.String)
    java.lang.String setDumpMethod(java.lang.String, java.lang.String)
    
    
    Notifications
    sip.container.overloaded
    sip.container.overload.cleared
    jmx.attribute.changed 
    
    Constructors

Resultados

Ha configurado el programa de utilidad de volcado de memoria de sesión SIP para imprimir el nivel de información de rastreo que desea para la sesión de aplicación SIP y la sesión SIP para ayudarle a solucionar problemas con el contenedor SIP.

Ejemplo

Los ejemplos siguientes ilustran los mandatos de scripts wsadmin y la salida de datos de rastreo al utilizar métodos SipContainerMBean en una sola configuración de servidor de aplicaciones.
  • Utilizando el método sucinto dumpAllSASIds:
    • En Jacl:
      $AdminControl invoke $apps dumpAllSASIds
    • Utilización de Jython:
      AdminControl.invoke (apps, "dumpAllSASIds")
    Resultados en la información siguiente del SystemOut.log:
    dump.ids.test.app1	2
    local.1347524282775_8
    local.1347524282775_7
    Esta información se proporciona en el formato siguiente :
    [SAS_ID]  
  • Utilizando el método detallado dumpAllSASDetails y especificando que la salida de volcado se imprima en el archivo /opt/IBM/output.log:
    • En Jacl:
      $AdminControl invoke $apps setDumpMethod {{FILE} {/opt/IBM/output.log}}
      $AdminControl invoke $apps dumpAllSASDetails
    • En Jython:
      AdminControl.invoke (apps, "setDumpMethod", ["FILE", "/opt/IBM/output.log"])
      AdminControl.invoke (apps, "dumpAllSASDetails")
    Resultados en la información detallada siguiente en el archivo /opt/IBM/output.log:
    dump.ids.test.app1	1
    local.1348147884986_2	Sep 20,2012 16:31	DumpSasDetailsAttr; 
    Esta información se proporciona en el formato siguiente :
    [SAS_ID]  [CreationTime] [attributes]
  • Utilizando el método sucinto dumpAllTUSipSessionIds para imprimir el número de usuarios de transacción y los ID de sesión SIP con el usuario de transacción:
    • En Jacl:
      $AdminControl invoke $apps dumpAllTUSipSessionIds
    • En Jython:
      AdminControl.invoke (apps, "dumpAllTUSipSessionIds")
    Resultados en la información siguiente del SystemOut.log:
    DumpSessionsTest	1
    local.1349965420866_1_0	true	local.1349965420866_1_0_1
    Esta información se proporciona en el formato siguiente :
    [TU_ID] [hasSIPSession] [SipSessionId] 
  • Utilizando el método detallado dumpAllTUSipSessionDetails para imprimir los usuarios de transacción y los detalles de los ID de sesión SIP en el usuario de transacción:
    • En Jacl:
      $AdminControl invoke $apps dumpAllTUSipSessionDetails
    • En Jython:
      AdminControl.invoke (apps, "dumpAllTUSipSessionDetails")
    Resultados en la información siguiente del SystemOut.log:
    DumpSessionsTest	1
    local.1349965420866_1_0	true	local.1349965420866_1_0_1	8-8548@9.148.57.128	2	false	INVITE
    		local.1349965420866_1	Jan 24,2013 14:41	TestSSAttr1; TestSSAttr2;
    Esta información se proporciona en el formato siguiente :
    [TU_ID] [hasSIPSession] [SipSessionId] [Call-Id] [DialogState] [hasOutgoingTransaction] [initialMethod] [SAS_ID]  [CreationTime] [attributes]
  • Utilización del método dumpSASDetails verbose para imprimir los detalles de la sesión de aplicación SIP que se especifican mediante el parámetro sasID :
    • En Jacl:
      $AdminControl invoke $apps dumpSASDetails  $sasId 
    • En Jython:
      AdminControl.invoke (apps, "dumpSASDetails ", "sasId")
    Resultados en la información siguiente del SystemOut.log:
    local.1358950127352_20	Jan 23,2013 16:19	TestSASAttr1; TestSASAttr2; 
    Si la sesión solicitada no existe, se emite un mensaje de error; por ejemplo:
    ERROR: Requested session <local.1358950127352_20> does not exist.
  • Utilización del método dumpSASDetails verbose para imprimir los detalles de la sesión de aplicación SIP que se especifican mediante el parámetro sessionId :
    • En Jacl:
      $AdminControl invoke $apps dumpSipSessionDetails $sessionId
    • En Jython:
      AdminControl.invoke (apps, "dumpSipSessionDetails", "sessionId")
    Resultados en la información siguiente del SystemOut.log:
    local.1358950127352_21_20_1	local.1358950127352_21	Jan 23,2013 16:22	TestSSAttr1; TestSSAttr2; 
    Si la sesión solicitada no existe, se emite un mensaje de error; por ejemplo:
    ERROR: Requested session <local.1358950127352_21_20_1> does not exist.

Icon that indicates the type of topic Task topic



Timestamp icon Last updated: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsip_troublesipcontainersess
File name: tsip_troublesipcontainersess.html