Leveraging the new Time Travel Trace API in Debugging tools to find when one or more SharePoint event happened
In my previous post, I showed a proof-of-concept script to list all occasions a process opened a file. JavaScript is easy to program and works for most cases, however in some occasions you need to access resources not available from JavaScript and only a full-fledged debugging extension will do. In this post I will show
Leveraging the new WinDbgX and Time-Travel-Trace –Script to list all access to files
WinDbg Preview a.k.a. WinDbgX aesthetically looks like a marriage between Visual Studio (VS) and WinDbg, however VS and WinDbg have not many things in common. For me, this is the good news. The bad news is that the support for managed code is as limited as WinDbg’s. You can download the preview here: https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/debugger-download-tools
Tool to generate DebugDiag rule for SharePoint based on event id (Tag) and optionally a partial message
When I updated my post on how to create DebugDiag rule based on event id (Tag), I received some feedback that modifying the scripts is quite error prone and more often than not the resulting script would not work as expected. To that end, I decided to create a visual tool that will create the
SharePoint 2013/2016 RSS Viewer not working with external sites when through a proxy
Recently I worked on a case for a Fortune 500 company that was having problems to render the RSS Viewer Web Part in their SharePoint 2013 farm. They still have a SharePoint 2010 farm in the same network environment and this farm was not having problems rendering the RSS Viewer. The constraint was this:
Misbehaving custom SharePoint components leading to claims authentication exceptions (tag bz7l)
I have mentioned the steps to troubleshoot Claims to Windows NT Service (c2WTS) problems in a previous post (click here). There is also a post to see if the problem is with Active Directory (AD) or c2WTS (click here). After doinf the normal troubleshooting outlined in the previous posts you still have an issue
Creating DebugDiag 2 rule to generate SharePoint 2010-2016 process dump based on ULS Tags and Message
I had previously discussed this topic here but it would not work for ULS tags with 5 digits (SharePoint 2013 and beyond). This post will guide you to create the rule for this particular ULS log entry: First, download DebugDiag 2 Update 2 or greater. As of the time of this writing it can
WinDBG Extension written completely in C#
A lot of good and competent people shy away from writing their own WinDbg extension because of the difficultyto prepare a native C++ DLL using the right APIs to interact with WinDbg. So this post is to get you started to writing your own extension using a proof-of-concept extension that can analyze manage dumps (as
Considerations for NetTcpBinding/NetNamedPipeBinding you may not be aware
NetTcpBinding is a strange beast and chances are you will encounter several problems in production you never experienced in development or staging phases. The information you will see here will be either fragmented or hidden in the fine print throughout MSDN documentation. Considerations about net.tcp binding Port Sharing Net.tcp services using shared port needs
How to Identify Why an Application Pool is Recycling in IIS 7+ and DebugDiag 2 Fails to Add Managed Breakpoint in .NET 4.6+ in one post
Identifying why Application Pool is recycling Starting with IIS 7, application recycle for managed Web Applications does not recycle w3wp.exe (IIS Worker Process), instead it simply reload (unload and load a new one) the Application Domain. I mentioned it on another post how to identify the cause of an application pool recycle, but now
Displaying Http Requests from Self-Hosted WCF Services
This is a short one, I promise. A colleague was complaining that NetExt command !whttp was not displaying the active/finished requests on a dump file he was sure it was processing http requests. The truth is that the process was not w3wp.exe (IIS Worker Process) but rather a self-hosted WCF service. The command !whttp