Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: Microsoft Dynamics AX 2009
Número de KB original: 953375
Resumen
En este artículo se describe que recibe el siguiente mensaje de error en el registro de aplicaciones en Microsoft Dynamics AX:
Error RPC: se produjo la excepción RPC 1726 en la sesión <SessionID>
Además, en este artículo se describe cómo asociar el identificador de sesión en el mensaje de error a un identificador de usuario.
Más información
Tenga en cuenta el siguiente escenario en Microsoft Dynamics AX 2009.
Observe que el uso de memoria aumenta en el servidor de AOS. A continuación, revise el registro de aplicación en el servidor de AOS para determinar la causa. En este escenario, observará que un evento se registra en el registro de aplicación.
En este escenario, es posible que desee buscar un identificador de usuario de Microsoft Dynamics AX asociado al identificador de sesión en el mensaje de error. Y usted quiere comprender el proceso empresarial y lo que el usuario final estaba haciendo en el momento en que tuvo problemas.
Para determinar si el problema se debe a un usuario final o al proceso empresarial, puede usar el identificador de sesión del mensaje de error en el registro de aplicación en el servidor de AOS. A continuación, puede relacionar el identificador de sesión con la tabla sysuserlog de la base de datos de Microsoft Dynamics AX. Para ello, siga estos pasos:
Ejecute una instrucción SQL en el Analizador de consultas SQL o en SQL Server Management Studio. Por ejemplo, ejecute la siguiente instrucción SQL en el Analizador de consultas SQL o en SQL Server Management Studio:
select * from sysuserlog where sessionid = <SessionID> and createddate > '2007/7/17' order by createddate desc
Nota:
- En este script, <SessionID> es el marcador de posición del identificador de sesión real en el mensaje de error del registro de aplicación.
- En este script, use una fecha creada mayor que (>) un día o varios días antes de la fecha real en el mensaje de error. A continuación, puede obtener la fecha en que el usuario final inició sesión en Microsoft Dynamics AX en lugar de la fecha del mensaje de error real.
Vea los resultados de la declaración. Por ejemplo, hay tres registros en los resultados de la siguiente instrucción.
USERID TIPO COMPUTERNAME TIPO DE CLIENTE TIEMPO_DE_CIERRE_DE_SESIÓN FECHA DE CIERRE DE SESIÓN BUILDNUM Identificador de Sesión TERMINADOBIEN FECHACREADA CREATEDTIME Administración 0 MACHINE1 1 57511 7/17/2007 2500.275 10 1 7/17/2007 37944 Marcar 0 MACHINE3 1 0 1/1/1900 2500.275 10 0 7/19/2007 75080 Juan 0 MACHINE2 3 41.200 7/18/2007 2500.275 10 1 7/20/2007 40326 Utilice los resultados de la instrucción para determinar el usuario que está asociado al ID de sesión en el mensaje de error. Para ello, siga estos pasos:
Compruebe la columna CLIENTTYPE para determinar el tipo de conexión y, a continuación, compruebe la columna TERMINATEDOK para comprobar qué cliente se bloqueó. Si la columna TERMINATEDOK de una línea muestra 0 (cero) y si no se registra ninguna hora de cierre de sesión en la columna LOGOUTTIME, significa que una aplicación cliente se bloqueó o un usuario final usó Ctrl+Alt+Supr para finalizar el proceso de la aplicación cliente.
Nota:
No use la columna SESSIONID porque se pueden reutilizar los identificadores de sesión.
En la tabla sysuserlog , los valores de la columna ClientType son los siguientes.
Valor El significado de que el valor representa 0 Objeto COM 1 Cliente 2 Servidor 3 Subproceso de trabajo Además, puede encontrar esta información sobre la tabla sysuserlog en el siguiente objeto en El árbol de objetos de aplicación (AOT):
\Documentación del sistema \ enumeraciones \ClientType
Anote el valor de la columna USERID y la columna COMPUTERNAME para el cliente que se bloqueó. A continuación, determine qué se estaba produciendo en este cliente y qué usuario estaba usando el cliente en ese momento.
En el ejemplo del paso 1, no hay tiempo de cierre de sesión y el valor TERMINATEDOK es 0 para el segundo registro de los resultados. Por lo tanto, es probable que el identificador de usuario de Mark y de MACHINE3 sea el usuario final que está asociado con el mensaje de error en el log de la aplicación. Debe comprobar con el usuario final para determinar si encontraron el problema y qué tipo de problemas encontró el usuario final.
Para comprobar las conexiones más recientes o las conexiones activas, compruebe la tabla sysclientsessions . Además, tenga en cuenta que los identificadores de sesión se pueden reutilizar. Por lo tanto, es posible que el usuario actual que use el identificador de sesión no sea el usuario final asociado al mensaje de error en el registro de la aplicación.