次の方法で共有


SQL アダプターでパフォーマンス カウンターを使用する

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 は呼び出される操作のアクションであり、"/" はアンダースコア "_" に置き換えられます。 また、SQL Server データベースで操作を実行するためにアダプターが内部的に使用するメソッドに応じて、アクション ID の前に "ExecuteScalar"、"ExecuteReader"、または "ExecuteNonQuery" が付きます。 たとえば、アダプターは内部的に ExecuteReader メソッドを使用して、SQL Serverでストアド プロシージャを実行します。 そのため、ストアド プロシージャ MyProcedure のアクション ID は次のようになります。

    ExecuteReader_Procedure_dbo_MyProcedure  
    

    パフォーマンス カウンターは、アダプターがSQL Server データベースの最初の呼び出しを行った後にのみ初期化されます。 また、パフォーマンス カウンターの InstanceLifetime プロパティは "Process" に設定されます。つまり、カウンターを作成するプログラムが終了するとすぐに、パフォーマンス カウンターが存在しなくなります。

Note

LOB 時間 (累積) パフォーマンス カウンターの精度は 16 ミリ秒です。

パフォーマンス カウンターの有効化

パフォーマンス カウンターは、バインド プロパティ EnablePerformanceCounters を設定することで有効または無効にすることができます。 パフォーマンス カウンターを有効にするには、 EnablePerformanceCounters バインド プロパティを True に設定 します。 パフォーマンス カウンターを無効にするには、 EnablePerformanceCountersFalse に設定します。 既定では、 プロパティは 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 に設定されます。

参照

SQL アダプターのトラブルシューティング