Diagnostikování transakčních aplikací
Toto téma popisuje, jak pomocí funkce správy a diagnostiky WCF (Windows Communication Foundation) řešit potíže s transakční aplikací.
Čítače výkonu
WCF poskytuje standardní sadu čítačů výkonu pro měření výkonu transakční aplikace. Další informace naleznete v tématu Čítače výkonu.
Čítače výkonu jsou vymezeny na tři různé úrovně: služba, koncový bod a operace, jak je popsáno v následujících tabulkách.
Čítače výkonu služby
Čítač výkonu | Popis |
---|---|
Počet plynoucích transakcí | Počet transakcí, které proudily do operací v této službě. Tento čítač se zvýší pokaždé, když je transakce přítomna ve zprávě, která je odeslána do služby. |
Počet plynoucích transakcí za sekundu | Počet transakcí, které proudily do operací v této službě v rámci každé sekundy. Tento čítač se zvýší pokaždé, když je transakce přítomna ve zprávě, která je odeslána do služby. |
Počet potvrzených zpracovaných operací | Počet provedených transakcí, jejichž transakce byla dokončena s výsledkem potvrzeným v této službě. Práce provedená v rámci těchto operací je plně potvrzena. Zdroje se aktualizují v souladu s prací provedenou v operaci. |
Počet potvrzených zpracovaných operací za sekundu | Počet provedených transakcí, jejichž transakce byla dokončena s výsledkem potvrzeným v této službě v rámci každé sekundy. Práce provedená v rámci těchto operací je plně potvrzena. Zdroje se aktualizují v souladu s prací provedenou v operaci. |
Počet přerušených transakčních operací | Počet provedených transaktovaných operací, jejichž transakce byla dokončena s výsledkem přerušeným v této službě. Práce provedená v rámci těchto operací se vrátí zpět. Prostředky se vrátí do předchozího stavu. |
Počet zrušených zpracovaných operací za sekundu | Počet provedených transakcí, jejichž transakce byla dokončena s výsledkem přerušen v této službě v rámci každé sekundy. Práce provedená v rámci těchto operací se vrátí zpět. Prostředky se vrátí do předchozího stavu. |
Počet nejistých zpracovaných operací | Počet provedených transakcí, jejichž transakce byla dokončena s výsledkem pochybnosti v této službě. Práce provedená s výsledkem v pochybnosti je v nedeterminátu stavu. Prostředky se uchovávají čekající na výsledek. |
Počet nejistých zpracovaných operací za sekundu | Počet provedených transakcí, jejichž transakce byla dokončena s výsledkem pochybnosti v této službě v rámci každé sekundy. Práce provedená s výsledkem v pochybnosti je v nedeterminátu stavu. Prostředky se uchovávají čekající na výsledek. |
Čítače výkonu koncového bodu
Čítač výkonu | Popis |
---|---|
Počet plynoucích transakcí | Počet transakcí, které do operací v tomto koncovém bodu proudily. Tento čítač se zvýší při každém zobrazení transakce ve zprávě, která se odešle do koncového bodu. |
Počet plynoucích transakcí za sekundu | Počet transakcí, které do provozu v tomto koncovém bodu došlo během každé sekundy. Tento čítač se zvýší při každém zobrazení transakce ve zprávě, která se odešle do koncového bodu. |
Čítače provozního výkonu
Čítač výkonu | Popis |
---|---|
Počet plynoucích transakcí | Počet transakcí, které do operací v tomto koncovém bodu proudily. Tento čítač se zvýší při každém zobrazení transakce ve zprávě, která se odešle do koncového bodu. |
Počet plynoucích transakcí za sekundu | Počet transakcí, které do provozu v tomto koncovém bodu došlo během každé sekundy. Tento čítač se zvýší při každém zobrazení transakce ve zprávě, která se odešle do koncového bodu. |
WMI (Windows Management Instrumentation)
WCF zveřejňuje kontrolní data služby za běhu prostřednictvím zprostředkovatele WMI (WCF Windows Management Instrumentation). Další informace o přístupu k datům rozhraní WMI naleznete v tématu Použití nástroje Windows Management Instrumentation pro diagnostiku.
Počet vlastností rozhraní WMI jen pro čtení označuje použité nastavení transakce pro službu. V následujících tabulkách jsou uvedená všechna tato nastavení.
Ve službě ServiceBehaviorAttribute
má následující vlastnosti.
Name | Typ | Popis |
---|---|---|
ReleaseServiceInstanceOnTransactionComplete | Logická hodnota | Určuje, zda je objekt služby recyklován po dokončení aktuální transakce. |
Transactionautocompleteonsessionclose | Logická hodnota | Určuje, zda čekající transakce jsou dokončeny při ukončení aktuální relace. |
TransactionIsolationLevel | Řetězec, který obsahuje platnou hodnotu výčtu IsolationLevel . | Určuje úroveň izolace transakcí, kterou tato služba podporuje. |
Vlastnost TransactionTimeout | DateTime | Určuje období, během kterého se transakce musí dokončit. |
Má ServiceTimeoutsBehavior
následující vlastnost.
Name | Typ | Popis |
---|---|---|
Vlastnost TransactionTimeout | DateTime | Určuje období, během kterého se transakce musí dokončit. |
U vazby TransactionFlowBindingElement
má následující vlastnosti.
Name | Typ | Popis |
---|---|---|
TransactionProtocol | Řetězec, který obsahuje platnou TransactionProtocol hodnotu typu. | Určuje transakční protokol, který se má použít při toku transakce. |
Transactionflow | Logická hodnota | Určuje, jestli je povolený tok příchozí transakce. |
U operace OperationBehaviorAttribute
má následující vlastnosti:
Name | Typ | Popis |
---|---|---|
Transactionautocomplete | Logická hodnota | Určuje, zda se má automaticky potvrdit aktuální transakce, pokud nedojde k neošetřeným výjimkám. |
Transactionscoperequired | Logická hodnota | Určuje, zda operace vyžaduje transakci. |
U operace TransactionFlowAttribute
má následující vlastnosti.
Name | Typ | Popis |
---|---|---|
TransactionFlowOption | Řetězec, který obsahuje platnou hodnotu výčtu TransactionFlowOption . | Určuje rozsah, do kterého se vyžaduje tok transakce. |
Sledování
Trasování umožňuje monitorovat a analyzovat chyby v transakčních aplikacích. Trasování můžete povolit následujícími způsoby:
Standardní trasování WCF
Tento typ trasování je stejný jako trasování jakékoli aplikace WCF. Další informace najdete v tématu Konfigurace trasování.
Trasování WS-AtomicTransaction
Trasování WS-AtomicTransaction lze povolit pomocí konfiguračního nástroje WS-AtomicTransaction (wsatConfig.exe). Takové trasování poskytuje přehled o stavu transakcí a účastníků v rámci systému. Pokud chcete také povolit interní trasování modelu služby, můžete klíč registru nastavit
HKLM\SOFTWARE\Microsoft\WSAT\3.0\ServiceModelDiagnosticTracing
na platnou hodnotu výčtu SourceLevels . Protokolování zpráv můžete povolit stejným způsobem jako jiné aplikace WCF.System.Transactions
TrasováníPři použití protokolu OleTransactions nelze trasovat zprávy protokolu. Trasování podporuje infrastrukturu System.Transactions (která používá OleTransactions) umožňuje uživatelům zobrazit události, ke kterým došlo k transakcím. Pokud chcete povolit trasování pro System.Transactions aplikaci, zahrňte do konfiguračního
App.config
souboru následující kód.<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>
To také umožňuje trasování WCF, protože WCF také využívá infrastrukturu System.Transactions .