ページごとにデータベースのヒット/期間を提供できるユーティリティは何ですか?
-
05-07-2019 - |
質問
SQL Serverプロファイラーは、WebアプリのSQL Serverパフォーマンスのプロファイリングに最適です。ただし、webappをテストするときは、データベースのヒット/期間の概要がページごとに欲しいです。
この種の情報を提供するユーティリティを知っている人はいますか
解決
ページごとの継続時間が必要な場合は、Googleアナリティクスを推奨します。
データベースヒットの概要が必要な場合(つまり、1ページのロード中に3つのプロシージャを実行して3カウントを表示する場合)、sprocに監査コードを追加することをお勧めします。
代わりに(処理の点ではより高価ですが)、SQLプロファイラまたはSQLトレースのいずれかを有効にして、データベースヒットを追跡して統計分析を実行できます。
他のヒント
すべてのサイトで使用されるデータアクセスルーチンを設定することをお勧めします。
このルーチン/クラス/またはデータベースまたはすべての「ヒット」、その期間、エラー(任意)、タイムアウトなどをログに記録できるものは何でも
適切にプログラムすれば、DBヒット/ページ読み込み数avg(DBHit)+を知ることができます。また、無料のボーナスとして、「最長SProc、最短、より頻繁に呼び出される」を取得できます。
これのプラス面は、ストアドプロシージャを変更する必要がなく、素敵な小さな「ラッパー」を持つことができることです。 DBへのアクセスについて。
「ページごとの継続時間」では、Google分析を使用する場合、データベースサーバーで取得した情報と情報をマージすることはできません。したがって、DBのページへの各アクセスをログに記録することをお勧めします。
その後、たとえばPage1.StartTime = getdate()、Page1.EndTime =(page2.Starttime-1またはsession.log_off_time)と推測できます。 [これは少し基本的なものですが、環境に応じて改善できます。]