Поделиться через


Диагностика транзакционных приложений

В этом разделе рассматривается использование функции управления и диагностики Windows Communication Foundation (WCF) для устранения неполадок транзакционного приложения.

Счетчики производительности

WCF обеспечивает стандартный набор счетчиков производительности для измерения производительности транзакционного приложения. Дополнительные сведения см. в разделе Счетчики производительности WCF.

Счетчики производительности группируются по трем различным уровням области действия: служба, конечная точка и операция, как описано в приведенных далее таблицах.

Счетчики производительности службы

Счетчик производительности Описание

Transactions Flowed

Количество транзакций в операциях для данной службы. Значение этого счетчика увеличивается каждый раз, когда в сообщении, отправленном в службу, имеется транзакция.

Transactions Flowed Per Second

Количество транзакций в операциях для данной службы за каждую секунду. Значение этого счетчика увеличивается каждый раз, когда в сообщении, отправленном в службу, имеется транзакция.

Transacted Operations Committed

Количество выполненных операций с поддержкой транзакций, транзакции которых были завершены с результатом, зафиксированным в этой службе. Работа, выполненная в таких операциях, полностью зафиксирована. Ресурсы обновлены в соответствии с работой, выполненной в операции.

Transacted Operations Committed Per Second

Количество выполненных операций с поддержкой транзакций, транзакции которых были завершены с результатом, зафиксированным в этой службе в течение каждой секунды. Работа, выполненная в таких операциях, полностью зафиксирована. Ресурсы обновлены в соответствии с работой, выполненной в операции.

Transacted Operations Aborted

Количество выполненных операций с поддержкой транзакций, транзакции которых были завершены с прерыванием в этой службе. Для работы, выполненной в таких операциях, производится откат. Для ресурсов восстанавливается предыдущее состояние.

Transacted Operations Aborted Per Second

Количество выполненных операций с поддержкой транзакций, транзакции которых были завершены прерыванием в этой службе в течение каждой секунды. Для работы, выполненной в таких операциях, производится откат. Для ресурсов восстанавливается предыдущее состояние.

Transacted Operations In Doubt

Количество выполненных операций с поддержкой транзакций, транзакции которых были завершены с сомнительным результатом в этой службе. Работа, выполненная с результатом "сомнительно", находится в неопределенном состоянии. Ресурсы находятся в состоянии ожидания результата.

Transacted Operations In Doubt Per Second

Количество выполненных операций с поддержкой транзакций, транзакции которых были завершены с результатом "сомнительно" в этой службе в течение каждой секунды. Работа, выполненная с результатом "сомнительно", находится в неопределенном состоянии. Ресурсы находятся в состоянии ожидания результата.

Счетчики производительности конечных точек

Счетчик производительности Описание

Transactions Flowed

Количество транзакций, поступивших в операции на этой конечной точке. Значение этого счетчика увеличивается каждый раз, когда в сообщении, отправленном на эту конечную точку, содержится транзакция.

Transactions Flowed Per Second

Количество транзакций в операциях для данной конечной точки за каждую секунду. Значение этого счетчика увеличивается каждый раз, когда в сообщении, отправленном на эту конечную точку, содержится транзакция.

Счетчики производительности операций

Счетчик производительности Описание

Transactions Flowed

Количество транзакций, поступивших в операции на этой конечной точке. Значение этого счетчика увеличивается каждый раз, когда в сообщении, отправленном на эту конечную точку, содержится транзакция.

Transactions Flowed Per Second

Количество транзакций в операциях для данной конечной точки за каждую секунду. Значение этого счетчика увеличивается каждый раз, когда в сообщении, отправленном на эту конечную точку, содержится транзакция.

Инструментарий управления Windows (WMI)

WCF предоставляет данные проверки службы во время выполнения с помощью поставщика инструментария управления Windows (WMI) WCF. Дополнительные сведения доступе к данным WMI см. в разделе Использование Windows Management Instrumentation для диагностики.

Ряд свойств WMI только для чтения показывает применяемые в службе параметры транзакции. В приведенных ниже таблицах перечислены эти параметры.

В службе атрибут ServiceBehaviorAttribute имеет следующие свойства.

Имя Тип Описание

ReleaseServiceInstanceOnTransactionComplete

Boolean

Указывает, производится ли повторное использование объекта службы после завершения текущей транзакции.

TransactionAutoCompleteOnSessionClose

Boolean

Указывает, завершаются ли ожидающие транзакции при закрытии текущего сеанса.

TransactionIsolationLevel

Строка, содержащая допустимое значение перечисления IsolationLevel.

Задает уровень изоляции транзакции, поддерживаемый этой службой.

TransactionTimeout

DateTime

Задает период времени, в течение которого транзакция должна быть завершена.

Атрибут ServiceTimeoutsBehavior имеет следующее свойство.

Имя Тип Описание

TransactionTimeout

DateTime

Задает период времени, в течение которого транзакция должна быть завершена.

В привязке атрибут TransactionFlowBindingElement имеет следующие свойства.

Имя Тип Описание

TransactionProtocol

Строка, содержащая допустимое значение типа TransactionProtocol.

Указывает протокол транзакций, используемый при передаче транзакций.

TransactionFlow

Boolean

Задает, включен ли входящий поток транзакций.

В операции атрибут OperationBehaviorAttribute имеет следующие свойства.

Имя Тип Описание

TransactionAutoComplete

Boolean

Указывает, следует ли автоматически фиксировать текущую транзакцию при отсутствии необработанных исключений.

TransactionScopeRequired

Boolean

Указывает, требует ли операция транзакции.

В операции атрибут TransactionFlowAttribute имеет следующие свойства.

Имя Тип Описание

TransactionFlowOption

Строка, содержащая допустимое значение перечисления TransactionFlowOption.

Задает область, к которой требуется поток транзакций.

Трассировка

Трассировка позволяет контролировать и анализировать ошибки в транзакционных приложениях. Трассировку можно включить следующими способами.

  • Стандартная трассировка WCF

    Трассировка этого типа аналогична трассировке любого другого приложения WCF. Дополнительные сведения см. в разделе Настройка трассировки.

  • Трассировка WS-AtomicTransaction

    Трассировку WS-AtomicTransaction можно включить с помощью атрибута Программа конфигурации WS-AtomicTransaction (wsatConfig.exe). Такая трассировка позволяет контролировать состояние транзакций и участников внутри системы. Чтобы включить также и трассировку модели службы, можно задать для ключа реестра HKLM\SOFTWARE\Microsoft\WSAT\3.0\ServiceModelDiagnosticTracing допустимое значение перечисления SourceLevels. Ведение журнала сообщений включается так же, как и для других приложений WCF.

  • Трассировка System.Transactions

    При использовании протокола OleTransactions возможна трассировка сообщений протокола. Поддержка трассировки, предоставляемая инфраструктурой System.Transactions (которая использует протокол OleTransactions), позволяет пользователям просматривать события, происходящие с транзакциями. Чтобы включить трассировку для приложения System.Transactions, поместите приведенный ниже код в файл конфигурации 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>
    

    При этом включается и трассировка WCF, так как WCF также использует инфраструктуру System.Transactions.

См. также

Справочник

Программа конфигурации WS-AtomicTransaction (wsatConfig.exe)

Основные понятия

Администрирование и диагностика
Настройка трассировки