BizTalk アダプター パック クライアントは、パフォーマンス カウンターを使用してアダプターのパフォーマンスを測定できます。 BizTalk アダプター パックセットアップ プログラムは、アダプター パックのインストールと共に、パフォーマンス カウンター カテゴリ "Microsoft BizTalk Adapter for SQL Server" を作成します。
LOB 時間 (累積) パフォーマンス カウンター
BizTalk .NET Adapter for SQL カテゴリには、"LOB 時間 (累積)" と呼ばれる 1 つのパフォーマンス カウンターがあります。 このパフォーマンス カウンターは、アダプターが開始するアクションを完了するために SQL Server クライアント ライブラリが実行する時間 (ミリ秒単位) を表します。 SQL アダプターは、特定の SQL Server インスタンスとデータベース名に対して、各アクションのパフォーマンス カウンターのインスタンスを作成します。 インスタンスは、次のパターンで作成されます。
<processId>:<appDomainId>:<endpointId>:<actionId>
<endpointId>
は<sql_server_name>, <instance_name>, <database_name>
として派生します。
<actionId>は次の方法で派生します。
接続を開く場合、アクション ID は "開く" です。
受信操作の場合、アクション ID は「Inbound」です。
送信操作の場合、アクション ID は呼び出される操作のアクションであり、"/" はアンダースコア "_" に置き換えられます。 また、アクション ID には、SQL Server データベースで操作を実行するためにアダプターが内部的に使用する方法に応じて、"ExecuteScalar"、"ExecuteReader"、または "ExecuteNonQuery" がプレフィックスとして付けられます。 たとえば、アダプターは内部的に ExecuteReader メソッドを使用して SQL Server でストアド プロシージャを実行します。 そのため、ストアド プロシージャ MyProcedure のアクション ID は次のようになります。
ExecuteReader_Procedure_dbo_MyProcedure
パフォーマンス カウンターは、アダプターが SQL Server データベースへの最初の呼び出しを行った後にのみ初期化されます。 また、パフォーマンス カウンターの InstanceLifetime プロパティは "Process" に設定されています。つまり、カウンターを作成するプログラムが終了するとすぐに、パフォーマンス カウンターが存在しなくなります。
注
LOB 時間 (累積) パフォーマンス カウンターの精度は 16 ミリ秒です。
パフォーマンス カウンターの有効化
パフォーマンス カウンターは、バインド プロパティ EnablePerformanceCounters を設定することで有効または無効にすることができます。 パフォーマンス カウンターを有効にするには、 EnablePerformanceCounters バインド プロパティを True に設定します。 パフォーマンス カウンターを無効にするには、 EnablePerformanceCounters を False に設定します。 既定では、プロパティは False に設定 されています。 このバインディング プロパティの詳細については、「 BizTalk Adapter for SQL Server アダプターのバインド プロパティの読み取り」を参照してください。
パフォーマンス カウンターと WCF LOB アダプター SDK
EnablePerformanceCounters バインド プロパティの値を変更すると、WCF LOB アダプター SDK の対応するパフォーマンス カウンターの値も変更されます。 また、WCF LOB アダプター SDK のバインド プロパティは静的ですが、SQL アダプターの場合は動的です。 そのため、アプリケーション ドメインに SQL アダプター バインドのインスタンスが 2 つあり、 EnablePerformanceCounters バインディング プロパティが一方で True に設定され、もう一方では False に設定されている場合、アダプター固有のパフォーマンス カウンターは一方で有効になり、もう一方では無効になります。 ただし、WCF LOB アダプター SDK のバインド プロパティは静的であるため、最後に指定した値に応じて True または False に設定されます。