Partager via


Diagnostic d'applications transactionnelles

Cette rubrique décrit comment utiliser la fonctionnalité de diagnostic et de gestion Windows Communication Foundation (WCF) pour dépanner une application transactionnelle.

Compteurs de performance

WCF fournit un jeu standard de compteurs de performance vous permettant de mesurer la performance de votre application transactionnelle. Pour plus d'informations, consultez Compteurs de performance WCF.

Les compteurs de performance sont définis à trois niveaux différents : service, point de terminaison, et opération, tel que décrit dans les tableaux suivants.

Compteurs de performance de service

Compteur de performance Description

Transactions passées

Nombre de transactions passées aux opérations dans ce service. Ce compteur est incrémenté chaque fois qu'une transaction est présente dans le message envoyé au service.

Transactions passées par seconde

Nombre de transactions passées aux opérations dans ce service par seconde. Ce compteur est incrémenté chaque fois qu'une transaction est présente dans le message envoyé au service.

Opérations traitées validées

Nombre d'opérations traitées avec des résultats validés dans ce service. Le travail effectué dans le cadre de telles opérations a été entièrement validé. Les ressources sont mises à jour en fonction du travail effectué dans l'opération.

Opérations traitées validées par seconde

Nombre d'opérations traitées avec des résultats validés dans ce service par seconde. Le travail effectué dans le cadre de telles opérations a été entièrement validé. Les ressources sont mises à jour en fonction du travail effectué dans l'opération.

Opérations traitées annulées

Nombre d'opérations traitées avec des résultats annulés dans ce service. Le travail effectué dans le cadre de telles opérations est annulé. Les ressources sont replacées à leur état antérieur.

Nombre d'opérations traitées annulées par seconde

Nombre d'opérations traitées avec des résultats annulés dans ce service par seconde. Le travail effectué dans le cadre de telles opérations est annulé. Les ressources sont replacées à leur état antérieur.

Opérations traitées avec des résultats incertains

Nombre d'opérations traitées avec des résultats incertains dans ce service. L'état d'un travail effectué avec un résultat incertain est indéterminé. Les ressources sont conservées dans l'attente des résultats.

Opérations traitées avec des résultats incertains par seconde

Nombre d'opérations traitées avec des résultats incertains dans ce service par seconde. L'état d'un travail effectué avec un résultat incertain est indéterminé. Les ressources sont conservées dans l'attente des résultats.

Compteurs de performance de point de terminaison

Compteur de performance Description

Transactions passées

Nombre de transactions passées à des opérations au niveau de ce point de terminaison. Ce compteur est incrémenté chaque fois qu'une transaction est présente dans le message envoyé au point de terminaison.

Transactions passées par seconde

Nombre de transactions passées à des opérations au niveau de ce point de terminaison par seconde. Ce compteur est incrémenté chaque fois qu'une transaction est présente dans le message envoyé au point de terminaison.

Compteurs de performance d'opération

Compteur de performance Description

Transactions passées

Nombre de transactions passées à des opérations au niveau de ce point de terminaison. Ce compteur est incrémenté chaque fois qu'une transaction est présente dans le message envoyé au point de terminaison.

Transactions passées par seconde

Nombre de transactions passées à des opérations au niveau de ce point de terminaison par seconde. Ce compteur est incrémenté chaque fois qu'une transaction est présente dans le message envoyé au point de terminaison.

Windows Management Instrumentation

WCF expose les données d'inspection d'un service au moment de l'exécution via un fournisseur WMI (Windows Management Instrumentation) WCF. Pour plus d'informations sur l'accès aux données WMI, consultez Utilisation de Windows Management Instrumentation pour les diagnostics.

Un certain nombre de propriétés WMI en lecture seule indiquent les paramètres de transaction appliqués pour un service. Les tableaux suivants répertorient l'ensemble de ces paramètres.

Sur un service, ServiceBehaviorAttribute a les propriétés suivantes :

Nom Type Description

ReleaseServiceInstanceOnTransactionComplete

Booléen

Spécifie si l'objet de service est recyclé lorsque la transaction actuelle se termine.

TransactionAutoCompleteOnSessionClose

Booléen

Spécifie si les transactions en attente sont terminées à la fermeture de la session actuelle.

TransactionIsolationLevel

Chaîne contenant une valeur valide de l'énumération IsolationLevel.

Spécifie le niveau d'isolation des transactions que ce service prend en charge.

TransactionTimeout

DateTime

Spécifie le délai dans lequel une transaction doit se terminer.

ServiceTimeoutsBehavior a la propriété suivante :

Nom Type Description

TransactionTimeout

DateTime

Spécifie le délai dans lequel une transaction doit se terminer.

Sur une liaison, TransactionFlowBindingElement a les propriétés suivantes :

Nom Type Description

TransactionProtocol

Chaîne contenant une valeur valide du type TransactionProtocol.

Spécifie le protocole de transaction utilisé dans le passage d'une transaction.

TransactionFlow

Booléen

Spécifie si le flux de transaction entrant est activé.

Sur une opération, OperationBehaviorAttribute a les propriétés suivantes :

Nom Type Description

TransactionAutoComplete

Booléen

Spécifie s'il convient de valider automatiquement la transaction actuelle si aucune exception non traitée ne se produit.

TransactionScopeRequired

Booléen

Spécifie si l'opération requiert une transaction.

Sur une opération, TransactionFlowAttribute a les propriétés suivantes :

Nom Type Description

TransactionFlowOption

Chaîne contenant une valeur valide de l'énumération TransactionFlowOption.

Spécifie l'étendue à laquelle le flux de transaction est requis.

Suivi

Les suivis vous permettent de surveiller et d'analyser les erreurs dans vos applications transactionnelles. Pour activer le suivi, procédez comme suit :

  • Suivi WCF standard
    Ce type de suivi est identique à celui des applications WCF. Pour plus d'informations, consultez Configuration du suivi.

  • Suivi WS-AtomicTransaction
    Le suivi WS-AtomicTransaction peut être activé à l'aide de WS-AtomicTransaction Configuration Utility. Un suivi de ce type permet de connaître l'état des transactions et des participants d'un système. Pour activer également le suivi du modèle de service interne, affectez une valeur valide de l'énumération SourceLevels à la clé de registre HKLM\SOFTWARE\Microsoft\WSAT\3.0\ServiceModelDiagnosticTracing. Vous pouvez activer la journalisation des messages de la même façon que pour les autres applications WCF.

  • Suivi System.Transactions
    Lorsque vous utilisez le protocole OleTransactions, les messages de protocole ne peuvent pas être suivis. La prise en charge du suivi fournie par l'infrastructure System.Transactions (laquelle utilise OleTransactions) permet aux utilisateurs de consulter les événements qui se sont produits au niveau des transactions. Pour activer le suivi d'une application System.Transactions, incluez le code suivant dans le fichier de configuration 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>
    

    Cela active par ailleurs le suivi WCF, car WCF utilise également l'infrastructure System.Transactions.

Voir aussi

Concepts

Administration et diagnostics
Configuration du suivi

Autres ressources

WS-AtomicTransaction Configuration Utility