【发布时间】:2010-09-15 06:22:14
【问题描述】:
SQL Server 分析器非常适合分析 Web 应用程序的 SQL Server 性能。但是,当我测试我的 web 应用程序时,我想要每页的数据库点击次数/持续时间摘要。
是否有人知道任何实用程序可以为您提供此类信息?
【问题讨论】:
标签: asp.net sql-server profiler
SQL Server 分析器非常适合分析 Web 应用程序的 SQL Server 性能。但是,当我测试我的 web 应用程序时,我想要每页的数据库点击次数/持续时间摘要。
是否有人知道任何实用程序可以为您提供此类信息?
【问题讨论】:
标签: asp.net sql-server profiler
如果您想要每页的持续时间,我建议使用 Google Analytics。
如果您想要数据库命中的摘要(即,您在一页加载期间运行三个过程,因此您希望显示三个),那么我建议您将审计代码添加到您的存储过程中。
或者(虽然在处理方面成本更高)您可以打开 SQL Profiler 或 SQL Trace,然后以这种方式跟踪数据库命中以对其执行统计分析。
【讨论】:
我建议设置一个用于所有站点的数据访问例程。
这个例程/类/或任何你喜欢的东西都可以记录到数据库或日志中所有“命中”、它们的持续时间、错误(是任何)、超时等。
如果编程正确,您将能够知道有多少 DB 命中/页面加载,avg(DBHit) + 您将免费获得“最长的 SProc,最短,更频繁地调用”。
这样做的好处是您不需要修改任何存储的过程,并且您可以有一个很好的小“包装器”来围绕您对数据库的访问。
对于“每页持续时间”,如果您使用 google 分析,您将无法将信息与您在数据库服务器上获得的信息合并回来。所以我建议记录对数据库中页面的每次访问。
然后你可以推断出 Page1.StartTime = getdate(), Page1.EndTime = (page2.Starttime-1 or session.log_off_time) 例如。 [这有点基础,但可以根据您的环境进行改进]。
【讨论】: