SharePoint Authentication And Authorization SPTechCon San Francisco
SharePoint Logging and Debugging: The Troubleshooter’s Best Friend by Jason Himmelstein -...
description
Transcript of SharePoint Logging and Debugging: The Troubleshooter’s Best Friend by Jason Himmelstein -...
SharePoint Logging & Debugging: The Troubleshooter’s Best Friend
Jason Himmelstein [email protected] @sharepointlhorn
Jason’s contact & vitals Microsoft vTSP
virtual Technology Solutions Professional SharePoint Foundation Logger
http://spflogger.codeplex.com Web: www.sentri.com Blog: www.sharepointlonghorn.com Twitter: @sharepointlhorn LinkedIn: www.linkedin.com/in/jasonhimmelstein
Author of Developing Business Intelligence Apps for SharePoint http://bit.ly/SharePointBI
So many people see the beauty…
…but never get the full experience
SharePoint Logging – a history
How has SharePoint traditionally done logging
IIS Logs
ULS Logs
Upgrade Logs
PSConfig Logs
SharePoint Logging – new & improved!
New Functionality in SharePoint 2010
Correlation IDs
Flood Protection
Developer Dashboard
Configurable ULS Logs
Usage Logging (Web Analytics)
Lets look at the big picture
Configurable ULS Logs
Size limitation Easy Granular tuning, with visibility
into what’s tuned Ability to specify number of days to
log
Flood Protection
I’m smart, why don’t I want to see
everything?
How does Flood Protection work?
How do I turn it off and on?With this option enabled, if the same event fires 5 times within 2 minutes, SharePoint will suppress the event from logging and throw a summary event at the 2 minute mark.
The default behavior and can be customized using PowerShell and the Set-SPDiagnosticConfig cmdlet.
How deep do you really want to go?
Flood Protection (cont’d)• How do I turn it off and on?
Health Data Collection Health Logging timer jobs are disabled by default
Be selective in what you want to enable
How to enable: Central Admin | /_admin/ServiceJobDefinitions.aspx
Filter by Disabled and enable one by one Powershell commandlet: SPDiagnosticProvider Enable all Health Data Collection option in
Central Admin | /_admin/LogUsage.aspx
Usage Logging
The drivers behind Web Analytics
True detail on who clicked what, and
what they saw
Finding the root cause
Correlation IDs What is this weird 32 character message and
why do I care?
How are they used in SharePoint 2010?
Why are they useful?
The Developer Dashboard How do I turn it on for a limited scope only?
There’s some great info here for developers, but what
does it tell me from an Operations/Support perspective?
How can I convince my development team to code for it?
SPMonitored Scope Not available in Sandboxed Solutions
The Developer Dashboard (cont’d) Enabling the dashboard
3 modes Off On OnDemand (recommended)
STSADM stsadm -o setproperty -pn developer-dashboard -pv [off | on |
ondemand] PowerShell
$j = [Microsoft.SharePoint.Administration.SPWebService]::ContentService.DeveloperDashboardSettings; $j.DisplayLevel = ; $j.Update()
$j = [Microsoft.SharePoint.Administration.SPWebService]::ContentService.DeveloperDashboardSettings; $j.DisplayLevel = 'OnDemand'; $j.Update()
Optional parameters
$j.TraceEnabled = $true;$j.RequiredPermissions = '%MaskSetting%';
The Developer Dashboard (cont’d)
The Developer Dashboard (cont’d)
Angry SharePoint!
The Developer Dashboard (cont’d)
Happy SharePoint!
SPMonitoredScope
The SPMonitoredScope class resides in the Microsoft.SharePoint.Utilities namespace. Example of wrapped code:
A tip for the best and most effective use of SPMonitoredScope: All calls to external components, such as custom databases, external Web services,
and so on, should be wrapped with SPMonitoredScope. This will make it easier for administrators to identify them as points of failure, and to isolate the problem quickly. Sandbox Solutions are not able to be wrapped in SPMonitoredScope
Measured statistics are written to the ULS logs as well as to the Developer Dashboard.
There are a few limitations for using SPMonitoredScope. Only calls to SharePoint databases are captured. Only the code wrapped with SPMonitoredScope that resides on the front-end Web
server appears on the Developer Dashboard. Code that executes on application servers only displays the SPMonitoredScope information in the ULS logs of the computer that the code is running on.
Create custom monitors by adding ISPScopedPerformanceMonitor to the current SPMonitoredScope
demo Configurable ULS Logs
Flood Protection
Developer Dashboard
DEMO
Web Analytics In Central Admin
Administrative Report Library – Search Admin Reports Health Reports -Slowest Pages & Top Active Users Break down by Web Application Traffic, Search Inventory
Configurable ULS Logs
One Database to rule them all: The Logging database
What can it log? How do I tell it to start logging? How do I get the information out? Are there tools out there to help me
see the data more easily? BDC models SQL Views CodePlex Projects
Are there performance implications?
NTEventLog in SPFLogger
NTEvent Analytics in SPFLogger
ULSTraceView in SPFLogger
TimerJob Log in SPFLogger
TimerJob Analytics in SPFLogger
…and now its time for…
SharePoint Server Performance
Governance & Troubleshooting Determine tolerance for custom solutions
Encourage Sandbox Solutions Require SPDisposeCheck Require SPMonitored Scope If you don’t have a Dev/QA Environment, you don’t
have a Production Environment Never test patches in Production Educate on the Developer Dashboard
SharePoint Server Performance
Governance & Troubleshooting Never accept a solution that is not a
WSP Respect your users, or you won’t have
any Limit the number of Farm Admins Minimize Server Sprawl Audit your environment regularly Survey your users regularly Engage your Executive Sponsorship
Handy Reference Information Useful Stuff
Jason’s info http://www.sharepointlonghorn.com [email protected] @sharepointlhorn
Todd Carter’s info @toddca http://www.todd-carter.com/
Russ Maxwell’s Blog http://blogs.msdn.com/b/russmax
Microsoft References SPMonitoredScope Class
http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.utilities.spmonitoredscope(office.14).aspx
Using SPMonitoredScope Class http://msdn.microsoft.com/en-us/library/ff512758.aspx
Download links http://spflogger.codeplex.com Microsoft SharePoint 2010 Administration Toolkit v2.0
Did you really take these pictures?
Jason’s contact & vitals Microsoft vTSP
virtual Technology Solutions Professional SharePoint Foundation Logger
http://spflogger.codeplex.com Web: www.sentri.com Blog: www.sharepointlonghorn.com Twitter: @sharepointlhorn LinkedIn: www.linkedin.com/in/jasonhimmelstein
Author of Developing Business Intelligence Apps for SharePoint http://bit.ly/SharePointBI