Verwenden des Entwicklerdashboards
Letzte Änderung: Mittwoch, 6. Oktober 2010
Gilt für: SharePoint Foundation 2010
Inhalt dieses Artikels
Welche Informationen werden erfasst?
Anzeigemodi des Dashboards
Aktivieren des Entwicklerdashboards
Deaktivieren des Entwicklerdashboards
Auf welchen Seiten wird das Entwicklerdashboard angezeigt?
Verwenden des Entwicklerdashboards in benutzerdefinierten Gestaltungsvorlagen
Verwenden des Entwicklerdashboards mit benutzerdefiniertem Code
Beim Entwicklerdashboard handelt es sich um ein in Microsoft SharePoint Foundation 2010 eingeführtes Instrumentationsframework. Ähnlich wie bei der ASP.NET-Seitenablaufverfolgung werden Diagnoseinformationen bereitgestellt, die einem Entwickler oder Systemadministrator bei der Behandlung von Problemen mit Seitenkomponenten helfen können, die ansonsten schwierig zu isolieren wären. Beispielsweise kann es vorkommen, dass zusätzliche SPSite- oder SPWeb-Objekte in den Code eingeführt oder zusätzliche SQL Server-Abfragen hinzufügt werden, ohne dass der Entwickler sich dessen bewusst ist.
Bisher bestand die einzige Möglichkeit zum Debuggen von Leistungsproblemen, die durch den zusätzlichen Aufwand dieser Instanzen im Code verursacht wurden, im Anfügen eines Debuggers an den Code und der Überwachung von SQL Server Profiler-Ablaufverfolgungen. Mit dem Entwicklerdashboard kann ein Entwickler diese Art von Problemen entweder programmgesteuert mithilfe des Objektmodells oder visuell durch Betrachten der Seitenausgabe identifizieren.
Zwar werden Leistungsprobleme und Informationen zum Ressourceneinsatz in den ULS-Protokollen (Unified Logging Service, vereinheitlichter Protokollierungsdienst) aufgezeichnet, die Interpretation der Rohdaten kann jedoch sehr zeitaufwändig sein. Mit dem Entwicklerdashboard werden alle diesbezüglichen Informationen zusammengefasst, wodurch sich diese Probleme wesentlich einfacher identifizieren lassen.
Welche Informationen werden erfasst?
Das Entwicklerdashboard enthält einen erweiterbaren Mechanismus zum Messen verschiedener Leistungsindikatoren in verschiedenen Bereichen. Im Entwicklerdashboard werden die folgenden Leistungsindikatoren verwendet, um die Auslastung und den Ressourcenverbrauch in jeder Phase der Anforderungen zu überwachen.
Threadabhängige Zähler
Mit diesen Zählern werden Werte für die aktuelle Anforderung oder den aktuellen Zeitgeberauftrag erfasst:
Threadausführungszeit
Anzahl, Dauer, Aufrufstapelinformationen und Abfragetext jeder von der Seite generierten SQL Server-Abfrage
Anzahl, Dauer und Aufrufstapelinformationen jedes WCF-Aufrufs
URL oder Name des Zeitgeberauftrags
Aktueller Benutzer
Startzeit der Ausführung
Jede der vorherigen Statistiken für in SPMonitoredScope eingeschlossenen Code (siehe Verwenden von "SPMonitoredScope")
Die obigen Daten werden am Ende jeder Anforderung oder jedes Zeitgeberauftrags an zwei Stellen ausgegeben:
ULS-Protokoll – Alle erfassten Statistiken für einen bestimmten Bereich werden stets im ULS-Protokoll verzeichnet.
Entwicklerdashboard – Leistungsstatistiken für eine Anforderung stehen im Browserfenster zur Verfügung.
Anzeigemodi des Dashboards
Das Entwicklerdashboard kann in folgenden Modi angezeigt werden:
On
Im On-Modus aktiviert, ist das Dashboard auf allen Seiten sichtbar, für die die Standardgestaltungsvorlage verwendet wird.
OnDemand
Ist der OnDemand-Modus für das Entwicklerdashboard festgelegt, wird rechts oben auf der Seite ein Symbol angezeigt. Mit diesem Symbol kann der Benutzer das Dashboard ein- und ausschalten.
Hinweis Beachten Sie unbedingt, dass bei Festlegung von OnDemand für den Anzeigemodus jeder mit der Berechtigung zum Anzeigen der Seite auch die Dashboardausgabe einsehen kann.
Aktivieren des Entwicklerdashboards
Das Entwicklerdashboard ist standardmäßig deaktiviert. Wenn Sie es anzeigen möchten, müssen Sie es mit STSADM, Windows PowerShell-Cmdlets oder dem SharePoint Foundation-Objektmodell aktivieren.
Verwenden von STSADM
Öffnen Sie im Verzeichnis %ProgramFiles%\Common Files\Microsoft Shared Debug\Web Server Extensions\14\BIN ein Befehlsfenster, und geben Sie je nach dem gewünschten Anzeigemodus einen der folgenden Befehle ein.
Mode |
Command |
On |
stsadm -o setproperty -pn developer-dashboard -pv on |
OnDemand |
stsadm -o setproperty -pn developer-dashboard -pv ondemand |
Verwenden von Windows PowerShell-Cmdlets
Mode |
Command |
On |
(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = ”On” |
OnDemand |
(Get-SPFarm).PerformanceMonitor.DeveloperDashboardLevel = ”OnDemand” |
Deaktivieren des Entwicklerdashboards
Verwenden von STSADM
stsadm -o setproperty -pn developer-dashboard -pv off
Auf welchen Seiten wird das Entwicklerdashboard angezeigt?
Wenn das Entwicklerdashboard aktiviert ist, wird es standardmäßig auf jeder Seite angezeigt, die die SharePoint Foundation 2010-Gestaltungsvorlage oder eine benutzerdefinierte Gestaltungsvorlage verwendet, die das Dashboard-Steuerelement enthält.
Verwenden des Entwicklerdashboards in benutzerdefinierten Gestaltungsvorlagen
Für die Anzeige des Dashboards sind zwei Komponenten erforderlich. Dies sind der Entwicklerdashboard-Starter ("Developer Dashboard Launcher") und das Seitenrendering-Steuerelement, das die Ausgabe der Seite rendert.
Entwicklerdashboard-Starter
Wenn der Anzeigemodus auf OnDemand festgelegt ist, wird das Startersymbol angezeigt. Es kann beliebig auf der Seite positioniert werden. Das folgende Beispiel zeigt das erforderliche Markup, um den Starter in eine Gestaltungsvorlage aufzunehmen.
<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 />
Seitenrendering-Steuerelement
Das Renderingsteuerelement muss sich am unteren Rand des Seitenmarkups befinden. Die Metriken von Steuerelementen, die sich auf der Seite unterhalb des Renderingsteuerelements befinden, werden nicht im Entwicklerdashboard angezeigt.
<SharePoint:DeveloperDashboard runat="server" />
Verwenden des Entwicklerdashboards mit benutzerdefiniertem Code
Durch die Einführung der SPMonitoredScope-Klasse erhielt ein Entwickler die Möglichkeit, Code "einzubinden" und die Verwendungsstatistiken für diesen Code auf dem Bildschirm anzuzeigen. Mit diesen Informationen können mögliche Fehlerquellen oder zumindest nicht erwartungsgemäß ausgeführte Komponenten identifiziert werden.
Siehe auch
Konzepte
Verwenden von "SPMonitoredScope"
Vermeiden der unnötigen Konstruktion von SPWeb- und SPSite-Objekten