Posted on:
Categories: SharePoint

Below describes an excellent troubleshooting methodology for SharePoint errors.


-          Issue is occurring but user has not been able to capture correlation ID or correlation ID does not exist.

-          Intermittent errors that cannot be replicated


1.        Obtain IIS logs from all SharePoint Web Servers and use log parser to filter logs based on user name and password.  Further filtering can be done based on specific event if available. The example blow filters all the IIS log files in c:\cases for a username %mdewji% and a line containing %workflow.asmx% in it.


·         Example: C:\cases \iis logs>logparser -i:IISW3C "select logfilename,date,time,cs-method,cs-username,cs-uri-stem  from *.log where cs-username like '%mdewji%' and cs-uri-stem like '%workflow.asmx”


2.       The result will look similar to the output below. 

LogFilename                                               date       time     cs-method cs-username        cs-uri-stem

---------------------------------------------------------------- ---------- -------- --------- -------------------- -----------------------

C:\cases\111083063986678-teck\iis logs\CGYSPSP42-Au_ex111208.log 2011-12-08 14:30:58 POST      domain\mdewji /vti_bin/workflow.asmx

C:\cases\111083063986678-teck\iis logs\CGYSPSP42-Au_ex111208.log 2011-12-08 14:31:38 POST      domain\mdewji /_vti_bin/workflow.asmx

C:\cases\111083063986678-teck\iis logs\CGYSPSP46-Au_ex111208.log 2011-12-08 14:33:35 POST      domain\mdewji /_vti_bin/workflow.asmx

C:\cases\111083063986678-teck\iis logs\CGYSPSP46-Au_ex111208.log 2011-12-08 15:29:04 POST      domain\mdewji /_vti_bin/workflow.asmx




Elements processed: 134730

Elements output:    4

Execution time:     0.77 seconds



2.        Using the time frame from above, merge the SharePoint ULS logs using PowerShell.

·         Command has to be run once on the farm.  

·         Use start/end time to create a smaller log file.

·          Example: merge-splogfile -path "D:\Merged Log files\combined.log" -overwrite -starttime "12/08/2011 08:00" -endtime "12/08/2011 09:00"


4.       Filter through the ULS log using ULS viewer based on the following:

                                                               i.      Correlation ID

                                                             ii.      Thread: Gives Deep down analysis of what each CPU thread is doing

                                                            iii.      Time Stamps

                                                           iv.      Event IDs
ULS Viewer with filter option