task namedurationguidbaseline start this is the task name2...
TRANSCRIPT
Adrian Jenkins and Brian SmithSenior Escalation EngineersMicrosoft
Troubleshooting Tips for Project and Project Server
PC209
MICROSOFT CONFIDENTIAL – INTERNAL ONLY
What we will cover…
• What makes a good repro• Where to look when things go wrong• Where to look if things are still going wrong• Finding and Reading the Logs• Troubleshooting Tools of the Trade• Troubleshooting with SQL Profiler• Troubleshooting using Client Logs• Questions
Logs
ULS logs PSCDiagnostics Upgrade Application Event
Event 1001! Watson %temp%
Online
TechNet Project Server TechCenter
MSDN Developer Center Blogs Forums
Where to look when things go wrong
Client Database
Application Event Log Client –side logging IE – Developer Tools IE Right-click SharePoint Developer
Dashboard Fiddler NetMon
SQL Server Profiler SQL Server
Management Studio P14DBDiag (coming
soon) NetMon
Server
ULSViewer Process Monitor
(sysinternals) PerfMon PowerShell NetMon ProjTool
Troubleshooting Tools of the TradeWhat to use and where
MICROSOFT CONFIDENTIAL – INTERNAL ONLY
SQL Profiler Trace
• Part of SQL Server (all versions) – can be found under the Performance Tools folder under SQL Server in the start menu
• My favorite tool – but again be careful in production unless you know what you are doing
• You can track the request being made against the database. Good for seeing performance issues and also excellent for tracking down data issues
Troubleshooting with SQL ProfilerHired resources report issuesBrian SmithSenior Support Escalation Engineer
demo
Troubleshooting Workflow IssuesWhat does Additional Workflow Data tell you?Clicking the symbol next to the Internal Status may elicit some useful informationA ‘401’ will usually mean the user profile service isn’t giving a unique (or any) response for the user specified
Do the IIS logs (on-premises) show anything?These will at the very least confirm who the workflow requests are coming from
What about the DebugTraces table (on-premises)?This is in the Workflow Instance Management database for Workflow Manager – by default called WFInstanceManagement
Are other workflows working?List workflows, or other site workflows – is it Project specific, stage specific or user specific? Try writing to the Task History list for debugging purposes
Why Client Logging?See where a process starts and stopsSee what was readSee what was writtenBecause it’s fun?
Project 2010 Client Logging• Sequential Text File • Use Notepad or other such tool to read
• Property Based Output• Logs Only Active Cache Interactions
Enabling Logging 2010The Registry Entries:Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\MS Project]"WinprojLog"="c:\\WinProjLogs\\""DebugCategory"=dword:ffffffff"DebugLevel"=dword:00000005"DebugLoadSerCategory"=dword:000003ed
Properties - PIDs• May be Listed in Hexadecimal value• To use, convert to decimal – and back…
• Where to find the Definitions • Built-in Local Custom Fields • Sometimes you’ll find the text string in the LOG file…• Published [MSP_CONVERSIONS].CONV_VALUE, look at CONV_STRING name• Listed in Decimal Value
• Enterprise Custom Fields• Published [MSP_CUSTOM_FIELDS].MD_PROP_ID, look at MD_PROP_NAME name• Listed in Decimal Value
Quick Timeout! File Open process…• PSI calls over SOAP are Sent to Server• Primary PSI Calls are:• ReadProjectStatus• PreReadProject• ReadProjectCoreData• ReadProjectNonCoreData• PostReadProject• ReadEnterpriseResourceAndSRAData• GetMatchingResources
• If any Calls fail, the entire Open fails
What Got Saved?Example: Did the task BaselineStart get saved?Gather the data…• Get Task GUID• Get PID• Look in Log and see if “Value” set
Task Name Duration GUID Baseline StartThis is the Task Name 2 days 90F44E39-646D-4A22-A991-65B952698042 NAThis is another Task 2 days A7AED6B7-42A5-4CB4-BCFB-60CDA9361850 1/23/14 8:00 AM
What Got Saved – Log ExampleTask GUID = {90F44E39-646D-4A22-A991-65B952698042}
PID = b40002b or b400513Log says…Set to NULL pid = b400513 Value = type=stringSetting pid b40002b to NULL
So, what happened?
What Went Wrong?18:21:50.756 00001cf0 Soap Error fault string: Unhandled Communication Fault occurred18:21:50.756 00001cf0 Soap detail string: <detail><string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">The request channel timed out while waiting for a reply after 00:02:59.9980000. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.</string></detail>18:21:50.756 00001b90 pid =f40010f Value = 0.000000 type=double18:21:50.756 00001b90 Soap call returned hr = 0 psErrorID = 900018:21:50.756 00001cf0 ExecuteSoapCall() returning 0 pid =f400025 Value = 0.000000 type=double18:21:50.756 00001cf0 Error while executing soap method ReadProjectNonCoreData2: faultcode: ProjectServerFaultCode18:21:50.756 00001cf0 Error while executing soap method ReadProjectNonCoreData2: faultstring: Unhandled Communication Fault occurred18:21:50.756 00001cf0 Error while executing soap method ReadProjectNonCoreData2: faultdetail: <detail><string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">The request channel timed out while waiting for a reply after 00:02:59.9980000. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.</string></detail>
Project 2013 Client Logging• Sequential Text File, ULS file format • Use a ULS file reader tool – or Notepad if you wish
• Function Based Output• Works Even Without Server
Enabled Logging 2013The Registry Entries:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\MS Project]"EnableLogging"=dword:00000001"EnableTextFileLogging"=dword:00000000"WinprojLog"="c:\\WinProjLogs\\""DebugCategory"=dword:ffffffff"DebugLevel"=dword:00000005"DebugLoadSerCategory"=dword:000003ed
Debug Levels You Can SetDebugLevel Values
Category #
Level Name
Level Value
10 Unexpected 1
15 Monitorable 2
20 High 350 Medium 4100 Verbose 5200 VerboseEx 6
Category Logging
37 Specific Categories to LogWindows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\MS Project\Logging]"LoadSave"=dword:00000006"Cache"=dword:00000006"Serializer"=dword:00000005
Where to Get the “Category” Names?Turn on logging and look at the top of the log file or the “nameext” file.
What Happened Here? Gather the info…• pid =2D8 value = {6678047A-0DAD-E211-
93EF-005056AD1F81}• Setting Rate pid to null 2dd
What Happened Here? Translate into human readable info…• pid = 2D8 -> 728 -> RES_UID
value = {6678047A-0DAD-E211-93EF-005056AD1F81}
• Setting Rate pid to null 2dd -> 733 -> Rate Table
Client Logging SummaryGives a View Into Open and Save OperationsCan help Identify ProblemsCan be fun to dig around… or not!
MyPC fill out evaluations & win prizes!
Fill out session evaluations by logging into MyPC on your laptop or mobile device.
Evaluation prizes daily! Claim your prize at the Registration Desk on Level 1.
www.msprojectconference.com
After the event, over 100 hours of resources; including all of the PPT decks and session videos will be available.
© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.