Compartir a través de


Diagnóstico de aplicaciones transaccionales

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

DateTime

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)

Conceptos

Administración y diagnóstico
Configurar seguimiento