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.
En este tema se describe cómo utilizar la característica de diagnóstico y administración de Windows Communication Foundation (WCF) para solucionar problemas de una aplicación transaccional.
Contadores de rendimiento
WCF proporciona un conjunto estándar de contadores de rendimiento para que usted mida el rendimiento de su aplicación transaccional. Para obtener más información, vea Contadores de rendimiento de WCF.
Los contadores de rendimiento tienen tres niveles de alcance diferentes: servicio, extremo y operación, tal y como se describe en las tablas siguientes.
Contadores de rendimiento de los servicios
Contador de rendimiento | Descripción |
---|---|
Flujo de transacciones |
Número de transacciones que fluyen a las operaciones de este servicio. Este contador se incrementa siempre que se encuentra una transacción en el mensaje enviado al servicio. |
Flujo de transacciones por segundo |
El número de transacciones que fluyeron a las operaciones en este servicio en cada segundo. Este contador se incrementa siempre que se encuentra una transacción en el mensaje enviado al servicio. |
Operaciones de transacción confirmadas |
El número de operaciones confirmadas realizadas, cuya transacción se ha completado con el resultado confirmado en este servicio. Se confirma totalmente el trabajo hecho bajo tales operaciones. Los recursos se actualizan de acuerdo con el trabajo hecho en la operación. |
Operaciones de transacción confirmadas por segundo |
El número de operaciones confirmadas realizadas, cuya transacción se ha completado con el resultado confirmado en este servicio en cada segundo. Se confirma totalmente el trabajo hecho bajo tales operaciones. Los recursos se actualizan de acuerdo con el trabajo hecho en la operación. |
Operaciones de transacción anuladas |
El número de operaciones confirmadas realizadas, cuya transacción se ha completado con el resultado anulado en este servicio. El trabajo hecho bajo tales operaciones se deshace. Los recursos se devuelven a su estado anterior. |
Operaciones de transacción anuladas por segundo |
El número de operaciones confirmadas realizadas, cuya transacción se ha completado con el resultado anulado en este servicio en cada segundo. El trabajo hecho bajo tales operaciones se deshace. Los recursos se devuelven a su estado anterior. |
Operaciones de transacción dudosas |
El número de operaciones confirmadas realizadas, cuya transacción se ha completado con un resultado bajo duda en este servicio. El trabajo hecho con un resultado bajo duda está en un estado indeterminado. Los recursos se mantienen pendientes del resultado. |
Operaciones de transacción en duda por segundo |
El número de operaciones confirmadas realizadas, cuya transacción se ha completado con un resultado bajo duda en este servicio en cada segundo. El trabajo hecho con un resultado bajo duda está en un estado indeterminado. Los recursos se mantienen pendientes del resultado. |
Contadores de rendimiento del extremo
Contador de rendimiento | Descripción |
---|---|
Flujo de transacciones |
Número de transacciones de flujo a las operaciones en este extremo. Este contador se incrementa siempre que se encuentra una transacción en el mensaje enviado al extremo. |
Flujo de transacciones por segundo |
El número de transacciones que fluyeron a operaciones en este extremo en cada segundo. Este contador se incrementa siempre que se encuentra una transacción en el mensaje enviado al extremo. |
Contadores del rendimiento de las operaciones
Contador de rendimiento | Descripción |
---|---|
Flujo de transacciones |
Número de transacciones de flujo a las operaciones en este extremo. Este contador se incrementa siempre que se encuentra una transacción en el mensaje enviado al extremo. |
Flujo de transacciones por segundo |
El número de transacciones que fluyeron a operaciones en este extremo en cada segundo. Este contador se incrementa siempre que se encuentra una transacción en el mensaje enviado al extremo. |
Windows Management Instrumentation
WCF expone datos de inspección de un servicio en tiempo de ejecución a través de un proveedor de Instrumentación de administración de Windows (WMI) de WCF. Para obtener más información sobre obtención de acceso a los datos de WMI, vea Utilización del instrumental de administración de Windows (WMI) para diagnósticos.
Varias propiedades WMI de solo lectura indican los valores de transacción aplicados para un servicio. Las tablas siguientes hacen una lista de todos estos valores.
En un servicio, ServiceBehaviorAttribute tiene las propiedades siguientes.
Nombre | Tipo | Descripción |
---|---|---|
ReleaseServiceInstanceOnTransactionComplete |
Booleano |
Especifica si el objeto de servicio se recicla cuando la transacción actual completa. |
TransactionAutoCompleteOnSessionClose |
Booleano |
Especifica si las transacciones pendientes se completan cuando la sesión actual se cierra. |
TransactionIsolationLevel |
Una cadena que contiene un valor válido de la enumeración IsolationLevel. |
Especifica el nivel de aislamiento de transacción que este servicio admite. |
TransactionTimeout |
Especifica el período dentro del que una transacción se debe completar. |
El ServiceTimeoutsBehavior tiene la siguiente propiedad.
Nombre | Tipo | Descripción |
---|---|---|
TransactionTimeout |
DateTime |
Especifica el período dentro del que una transacción se debe completar. |
En un enlace, el TransactionFlowBindingElement tiene las propiedades siguientes.
Nombre | Tipo | Descripción |
---|---|---|
TransactionProtocol |
Una cadena que contiene un valor válido del tipo TransactionProtocol. |
Especifica el protocolo de transacción a utilizar para que una transacción fluya. |
TransactionFlow |
Booleano |
Especifica si el flujo de transacciones entrantes está habilitado. |
En una operación, el OperationBehaviorAttribute tiene las propiedades siguientes:
Nombre | Tipo | Descripción |
---|---|---|
TransactionAutoComplete |
Booleano |
Especifica si confirmar automáticamente la transacción actual si no se produce ninguna excepción no controlada. |
TransactionScopeRequired |
Booleano |
Especifica si la operación requiere una transacción. |
En una operación, el TransactionFlowAttribute tiene las propiedades siguientes:
Nombre | Tipo | Descripción |
---|---|---|
TransactionFlowOption |
Una cadena que contiene un valor válido de la enumeración TransactionFlowOption. |
Especifica hasta qué punto se requiere el flujo de la transacción. |
Seguimiento
Las trazas le permiten supervisar y analizar los errores de sus aplicaciones transaccionales. Puede habilitar el seguimiento mediante las maneras siguientes:
Seguimiento estándar de WCF
Este tipo de seguimiento es igual que seguir cualquier aplicación de WCF. Para obtener más información, vea Configurar seguimiento.
Trazado de WS-AtomicTransaction
El seguimiento de WS-AtomicTransaction puede habilitarse mediante Utilidad de configuración de WS-AtomicTransaction (wsatConfig.exe). Tal seguimiento proporciona una visión sobre el estado de las transacciones y participantes de un sistema. Para también permitir el seguimiento de Service Model, puede establecer la clave de registro HKLM\SOFTWARE\Microsoft\WSAT\3.0\ServiceModelDiagnosticTracing en un valor válido de la enumeración SourceLevels. Puede habilitar el registro de mensajes de la misma manera que en otras aplicaciones de WCF.
Seguimiento de System.Transactions
Si se usa el protocolo OleTransactions, no se pueden seguir los mensajes de protocolos. La compatibilidad de seguimiento que proporciona la infraestructura System.Transactions (que utiliza OleTransactions) permite a los usuarios ver eventos que ocurrieron a las transacciones. Para habilitar el seguimiento para una aplicación System.Transactions, incluya el siguiente código en el archivo de configuración App.config.
<configuration> <system.diagnostics> <sources> <source name="System.Transactions" switchValue="Verbose, ActivityTracing"> <listeners> <add name="Text" type="System.Diagnostics.XmlWriterTraceListener" initializeData="SysTx.log" traceOutputOptions="Callstack" /> </listeners> </source> </sources> <trace autoflush="true" indentsize="4"> </trace> </system.diagnostics> </configuration>
Esto también habilita el seguimiento de WCF, puesto que WCF también utiliza la infraestructura System.Transactions.
Vea también
Referencia
Utilidad de configuración de WS-AtomicTransaction (wsatConfig.exe)