使用开发人员仪表板
上次修改时间: 2015年3月9日
适用范围: SharePoint Foundation 2010
本文内容
捕获哪些信息?
面板显示模式
如何启用开发人员面板
如何禁用开发人员面板
开发人员面板会在哪些页面上出现?
在自定义母版页上使用开发人员面板
将开发人员面板与自定义代码一起使用
开发人员面板是 Microsoft SharePoint Foundation 2010 中引入的仪表框架。此面板在概念上与 ASP.NET 页面跟踪类似,它提供了一些诊断信息,可帮助开发人员或系统管理员解决难以隔离的页面组件问题。例如,开发人员很容易无意地在其代码中引入额外的 SPSite 或 SPWeb 对象或添加外部 SQL Server 查询。
在过去,用于调试因代码中这些实例的额外开销所导致的性能问题的唯一方法是,将调试器附加到代码并监视 SQL Server Profiler 踪迹。利用开发人员面板,开发人员可通过编程方式(通过使用对象模型)或可视方式(通过查看页面输出)来识别此类问题。
虽然统一日志记录服务 (ULS) 日志中记录了性能问题和资源使用率信息,但解释原始数据可能相当耗时。利用开发人员面板,可以将所有相关信息关联在一起,这样便能更轻松地识别这些类型的问题。
捕获哪些信息?
开发人员面板包含一个可扩展机制,用于在不同的范围下测量各种性能计数器。在开发人员面板内部,可使用以下性能计数器来监视请求的每个阶段的使用率和资源消耗。
每线程计数器
这些计数器可测量当前请求或计时器作业的值:
线程执行时间
数量、持续时间、调用堆栈信息和页面生成的每个 SQL Server 查询的查询文本
数量、持续时间和每个 WCF 调用的调用堆栈信息
URL 或计时器作业名称
当前用户
执行开始时间
包含在 SPMonitoredScope 中的代码的前面的任意统计信息(请参阅使用 SPMonitoredScope)
在每个请求或计时器作业结束时,前面的数据将输出到以下两个位置:
ULS 日志 — 针对指定范围收集的所有统计信息始终记录到 ULS 日志。
开发人员面板 — 可从浏览器窗口中查看请求的性能统计信息。
面板显示模式
可以在以下模式中显示开发人员面板:
On
在 On 模式中启用面板时,可在使用默认母版页的所有页面上查看面板。
OnDemand
在将开发人员面板设置为 OnDemand 模式时,页面的右上方会显示一个图标。用户可使用该图标来启用和禁用面板。
备注
必须注意,当显示模式设置为 OnDemand 时,有权查看该页面的任何人都将能够查看仪表板输出。
如何启用开发人员面板
默认情况下,开发人员面板总是出于禁用状态。若要使开发人员面板可见,您必须使用 STSADM、Windows PowerShell cmdlet 或 SharePoint Foundation 对象模型来启用它。
使用 STSADM
打开一个针对 %ProgramFiles%\Common Files\Microsoft Shared Debug\Web Server Extensions\14\BIN 目录的命令窗口并输入下列命令之一,具体取决于所需的显示模式。
Mode |
Command |
On |
stsadm -o setproperty -pn developer-dashboard -pv on |
OnDemand |
stsadm -o setproperty -pn developer-dashboard -pv ondemand |
使用 Windows PowerShell Cmdlet
Mode |
Command |
On |
(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = "On" |
OnDemand |
(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = "OnDemand" |
如何禁用开发人员面板
使用 STSADM
stsadm -o setproperty -pn developer-dashboard -pv off
开发人员面板会在哪些页面上出现?
在启用开发人员面板时,默认情况下,该面板会在使用 SharePoint Foundation 2010 母版页的任何页面上或使用包含面板控件的自定义母版页的任何页面上出现。
在自定义母版页上使用开发人员面板
若要显示面板,必须使用两个组件,即开发人员面板启动器 和页面呈现控件(用于将输出呈现到页面上)。
开发人员面板启动器
在将显示模式设置为"OnDemand"时,该启动器会显示一个启动器图标。可在页面上的任何位置使用此图标。下面的示例显示在母版页上包含启动器所必需的标记。
<Sharepoint:DeveloperDashboardLauncher ID="DeveloperDashboardLauncher" href="javascript:ToggleDeveloperDashboard()" runat="server" ImageUrl="/_layouts/images/fgimg.png" Text="<%$Resources:wss,multipages_launchdevdashalt_text%>" OffsetX=0 OffsetY=222 Height=16 Width=16 />
页面呈现控件。
该呈现控件必须位于页面标记的底部。页面上位于该呈现控件下方的任何控件的度量将不会报告给开发人员面板。
<SharePoint:DeveloperDashboard runat="server" />
将开发人员面板与自定义代码一起使用
通过引入 SPMonitoredScope 类,开发人员可"包装"代码并在屏幕上显示该代码的使用统计信息。可使用此信息标识潜在的失败点或至少可标识未按预期执行的组件。