<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Debug Diagnostic Tool</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/debugdiag/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/debugdiag/feed.xml</link>
    <description>The Debug Diagnostic Tool is a tool designed to help troubleshoot performance issues with Internet Information Services (IIS).  Even though the tool was designed with troubleshooting IIS in mind it can be used to identify performance issues for any proces</description>
    <lastBuildDate>Tue, 16 Apr 2019 05:01:29 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>DebugDiag 2 Update 2 is now available</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debugdiag2-update-2-is-now-rtw</link>
      <pubDate>Fri, 13 Nov 2015 17:25:27 GMT</pubDate>
      <dc:creator><![CDATA[mouradl]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2015/11/13/debugdiag2-update-2-is-now-rtw/</guid>
      <description><![CDATA[&nbsp;

The DebugDiag development team is back with a new release!  We are very excited to...]]></description>
      <content:encoded><![CDATA[<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/2845.ddlogo.JPG"><img style="margin-right: auto;margin-left: auto" src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/2845.ddlogo.JPG" alt="" width="299" height="151" border="0" /></a>

&nbsp;

<span style="font-family: comic sans ms,sans-serif;font-size: medium">The DebugDiag development team is back with a new release!  We are very excited to announce the general availability of <strong>DebugDiag 2 Update 2</strong>.</span>

<span style="font-family: comic sans ms,sans-serif;font-size: medium">A number of fixes and features are included in this release.  A summary of these enhancements is as follows:</span>

&nbsp;
<ul>
<ul>
<ul>
	<li>Resolved issue with High CPU in dbghost due to exception monitoring when the target throws high rate of exceptions</li>
	<li>Resolved issue with memory leak in dbghost due to bug in sos.dll</li>
	<li>Added Autoupdate security enhancements</li>
	<li>Fixes in leaktrack native memory tracking</li>
	<li>Resolved Breakpoint issue against .net 4.6 targets</li>
	<li>A number of exceptions during analysis are resolved</li>
	<li>New report format with greatly improved organization and filtering</li>
	<li>Introduced latest Microsoft.Diagnostics.Runtime.dll</li>
	<li>Added support for analysis of .net 4.6 targets</li>
	<li>A number of new analysis checks are added</li>
	<li>…etc.</li>
</ul>
</ul>
</ul>
&nbsp;

<span style="font-family: comic sans ms,sans-serif;font-size: small">The release is available here:</span>  <a href="https://www.microsoft.com/en-us/download/details.aspx?id=49924">https://www.microsoft.com/en-us/download/details.aspx?id=49924</a>

&nbsp;

<span style="font-family: comic sans ms,sans-serif;font-size: small">Please email dbgdiag at Microsoft dot com for issues </span>

&nbsp;

<span style="font-family: comic sans ms,sans-serif;font-size: small">Thank you</span>

&nbsp;

<span style="font-family: comic sans ms,sans-serif;font-size: small">The DebugDiag Development Team</span>

&nbsp;

&nbsp;

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>dbghost.exe consumes high CPU (DebugDiag2.0 and 2.0 Update1)</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/dbghost-exe-consumes-high-cpu-debugdiag2-0-and-2-0-update1</link>
      <pubDate>Thu, 16 Jul 2015 14:06:08 GMT</pubDate>
      <dc:creator><![CDATA[mouradl]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2015/07/16/dbghost-exe-consumes-high-cpu-debugdiag2-0-and-2-0-update1/</guid>
      <description><![CDATA[I've seen multiple reports that in some circumstances DebugDiag 2.0+ debugger engine (dbghost.exe)...]]></description>
      <content:encoded><![CDATA[<p>I've seen multiple reports that in some circumstances DebugDiag 2.0+ debugger engine (dbghost.exe) may consume high CPU which ends up causing the target process to experience performance issues.</p>
<p>As you know, in DebugDiag 2.0, we introduced a new feature called "Exception Management", this feature basically manages all exceptions that are thrown by the target process since the debugger was attached. We know that the feature's performance is&nbsp;dependent on the number of exceptions/sec thrown by the target process, so we have added a configuration option that turns off the feature when the # of exceptions/sec is above a threshold. This helped a little, but still due to the way the control script&nbsp;manages every exception, we still saw some&nbsp; performance issues reported.</p>
<p>&nbsp;With DebugDiag 2.0 Update 2 (To be released July/August 2015) , this issue has been fixed.</p>
<p>&nbsp;</p>
<p><span style="color: #ff0000;"><strong>Update 9/8/2015</strong></span>:&nbsp; We have found a showstopper that prevented us from releasing the update on time. We are sorry for the inconvenience and are working on fixing the issue before the release!</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>DebugDiag 2 Update 1 is now available</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debugdiag-2-update-1-is-now-available</link>
      <pubDate>Wed, 14 May 2014 09:11:03 GMT</pubDate>
      <dc:creator><![CDATA[mouradl]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2014/05/14/debugdiag-2-update-1-is-now-available/</guid>
      <description><![CDATA[&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

NOTE:  This is not the latest version of...]]></description>
      <content:encoded><![CDATA[&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

<strong>NOTE:  This is not the latest version of DebugDiag.</strong>

Please download the latest version from <a title="Latest DebugDiag Download" href="https://DebugDiag.com">DebugDiag.com </a>

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

&nbsp;

Hi All,

The DebugDiag development team is very excited to announce the general availability of <strong>DebugDiag 2 Update 1</strong>. This update targeted a number of issues that were raised in the previous 2.0 release. A summary of these issues is as follows:

-      DAC Load issues during analysis

-      A number of analysis rules exceptions fixed

-      Breakpoint Reset in control script

-      Dbghost leak with External Debugger Engine

-      Wrong Script block for configured exceptions

-      UI fixes in Crash Rule Preferences

-      …etc.

In addition to this, the update introduced some new features. A summary is as follows:

-   MiniDump support in analysis.

-   Reduced rule’s log file size.

-   Added debugging overhead summary in the rule’s log file.

&nbsp;

Release is available at: <a href="https://www.microsoft.com/en-us/download/details.aspx?id=42933">https://www.microsoft.com/en-us/download/details.aspx?id=42933</a>

Please email us at dbgdiag at Microsoft dot com with any questions/issues.

&nbsp;

Thank you

The DebugDiag Team

&nbsp;]]></content:encoded>
    </item>
    <item>
      <title>The DebugDiag 2.0 Team</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/the-debugdiag-2-0-team</link>
      <pubDate>Fri, 04 Oct 2013 10:05:00 GMT</pubDate>
      <dc:creator><![CDATA[Wade Mascia]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/10/04/the-debugdiag-2-0-team/</guid>
      <description><![CDATA[Project Manager:

Mourad Lagdas

Lead Developer:

Wade Mascia&nbsp; (Thank you DebugDiag 2.0...]]></description>
      <content:encoded><![CDATA[<p><span style="color: #ff6600;"><strong>Project Manager</strong>:</span></p>
<ul>
<li>Mourad Lagdas</li>
</ul>
<p><span style="color: #ff6600;"><strong>Lead Developer</strong>:</span></p>
<ul>
<li>Wade Mascia&nbsp; (<a title="Thank you DebugDiag 2.0 Team!" href="https://blogs.msdn.com/b/wadesworld/archive/2013/10/04/thank-you-debugdiag-team.aspx">Thank you DebugDiag 2.0 Team!</a>)</li>
</ul>
<p><span style="color: #ff6600;"><strong>Core Team</strong>:&nbsp;</span></p>
<ul>
<li>Bret Bentzinger</li>
<li>Brian Roder</li>
<li>Ivanov Cepeda Pinto</li>
<li>Tomas Restrepo</li>
<li>Trevor Fellman</li>
<li>Richard Marr&nbsp;</li>
</ul>
<p><span style="color: #ff6600;"><strong>Script Conversion Team:</strong></span></p>
<ul>
<li>Amol Mehrotra</li>
<li>Devendra Asane</li>
<li>Nazeef Mallick</li>
<li>Puneet Gupta (Script Conversion Team Lead)</li>
<li>Rajkumar Rangaraj</li>
<li>Rakki Muthukumar</li>
<li>Santhosh Somayajulu</li>
<li>Shamik Misra</li>
<li>Sunil Kumar Chakrapani</li>
</ul>
<p><strong><span style="color: #ff6600;">Additional Contributors:</span></strong></p>
<ul>
<li>Dario Spilkin</li>
<li>George Archer</li>
<li>Jack Davis</li>
<li>Jeremy Phelps (Nasty Bug Ninja)</li>
<li>Kelvin Houghton</li>
<li>Larry Wall</li>
<li>Prakash Patel</li>
<li>Rodney Viana</li>
<li>Todd Foust</li>
</ul>
<p><span style="color: #ff6600;"><strong>External Contributors</strong>:</span></p>
<ul>
<li>Practices Checker: Sean Thompson</li>
<li>DynamicsAX: Tariq Bell, Pere Turegano, Erik Engstrom, Doug Bartley</li>
<li>CLRMD: Lee Culver</li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>DebugDiag 2.0 is now RTW</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debugdiag-2-0-is-now-rtw</link>
      <pubDate>Thu, 03 Oct 2013 13:20:00 GMT</pubDate>
      <dc:creator><![CDATA[mouradl]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/10/03/debugdiag-2-0-is-now-rtw/</guid>
      <description><![CDATA[&nbsp;
&nbsp;
The DebugDiag development team is very excited to announce the general...]]></description>
      <content:encoded><![CDATA[<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/3326.DDLogo.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/3326.DDLogo.jpg"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/3326.DDLogo.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/3326.DDLogo.jpg" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>The <a title="DebugDiag development team" href="https://blogs.msdn.com/b/debugdiag/archive/2013/10/04/the-debugdiag-2-0-team.aspx">DebugDiag development team</a> is very excited to announce the general availability of DebugDiag 2.0. The long waited DebugDiag 2.0 comes now with the new analysis engine fully converted to .NET to allow for faster analysis rule development. The tool comes also with a number of new features in the Collection and Analysis modules such as .<strong>NET 4.5 support</strong>, <strong>CLRMD integration</strong>, <strong>C# and XAML sample rules</strong>, <strong>Detailed 1<sup>st </sup>chance exception logging</strong> &hellip;etc.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/3301.AnalysisUI.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/3301.AnalysisUI.jpg"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/3301.AnalysisUI.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/3301.AnalysisUI.jpg" alt="" border="0" /></a></p>
<p>Download the tool from <a title="debugdiag.com" href="https://debugdiag.com">debugdiag.com</a>&nbsp; <br />(it should redirect <a title="here" href="https://www.microsoft.com/en-us/download/details.aspx?id=40336">here</a>)</p>
<p>&nbsp;</p>
<p>Thank you</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Did You Know?</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/did-you-know</link>
      <pubDate>Wed, 02 Oct 2013 08:39:00 GMT</pubDate>
      <dc:creator><![CDATA[mouradl]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/10/02/did-you-know/</guid>
      <description><![CDATA[Update 10/24/2013
Some customers have experienced a memory leak in dbghost.exe when using this...]]></description>
      <content:encoded><![CDATA[<p><span style="color: #ff0000;"><strong>Update </strong><span style="color: #000000;">10/24/2013</span></span></p>
<p>Some customers have experienced a memory leak in dbghost.exe when using this feature (on by default).&nbsp; The issue is not in the tool itself, but is due to a problem in sos.dll.&nbsp; Until an update is available, users can workaround the problem by turning off&nbsp;the feature off in the DebugDiag options.&nbsp; Unchecking the box to include the summary table in the log file doesn't completely address the issue.&nbsp; Instead, set the thresholds to 0 as shown below.</p>
<p>&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/4705.disableexceptiondetails.jpg" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/4705.disableexceptiondetails.jpg"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/4705.disableexceptiondetails.jpg" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/4705.disableexceptiondetails.jpg" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong>You might not need a dump file anymore</strong></p>
<p>DebugDiag 2.0 introduces a new feature to track exceptions. This feature is very helpful since it provides details on all exceptions thrown during the debugging session. Many times you don&rsquo;t really need a dump file to<br />troubleshoot an exception.&nbsp; Instead you may just need the exception Type, Message, and Call Stack.&nbsp; In those cases, simply using an &ldquo;empty&rdquo; crash rule may be enough to figure out the root cause of the issue being debugged. &nbsp;An &ldquo;empty&rdquo; crash rule is one where you select your target (Executable, IIS Application Pool, Service, etc.), and then just click &lsquo;Next&rsquo;, &lsquo;Next&rsquo;, &lsquo;Finish&rsquo; without configuring any specific actions such as &lsquo;Create Full UserDump&rsquo; or &lsquo;Log Stack Trace&rsquo;.</p>
<p>This feature is ON by default, and can be turned OFF or configured in the Crash Rule preferences Tab in the Options and Settings Windows under the Tool Menu.&nbsp;</p>
<p><strong>IMPORTANT</strong>:&nbsp; This information is only written to the log file at the <strong>end</strong> of the debug session.&nbsp; Either deactivate the rule or stop the target process to end the debug session.</p>
<p><strong>Performance Details</strong></p>
<p>To avoid affecting performance, only minimal information is logged to disk throughout the life of the process.&nbsp; If the exception rate rises above the configurable thresholds, then the more expensive information is no longer collected (notice the &lsquo;omitted&rsquo; sections below).&nbsp; If the exception rate drops below the threshold, the full information is collected from that point forward.&nbsp; The exception details are stored in memory, and the &rsquo;Exception Details&rsquo; and the &lsquo;Exception Summary&rsquo; sections are written to the log file only when the process exits or when a rule is deactivated.&nbsp; Additional memory is only required when a new entry in these summary sections is added.&nbsp; If the same exception repeatedly occurs at the same place in the application, a count is incremented and additional memory is not needed.</p>
<p>The various options for this feature are found on the &lsquo;Crash Rule Preferences&rsquo; tab of the &lsquo;Tools | Options &amp; Settings&rsquo; dialog:</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/1881.OptionsAndSettings.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/1881.OptionsAndSettings.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/62/58/1881.OptionsAndSettings.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-00-62-58/1881.OptionsAndSettings.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>If configured, an exception summary table will be included at the end of the rule's log file located now in the rule's folder (the log files are now located with the dump files - this is another new feature in 2.0).</p>
<p>EG: C:\Program Files\DebugDiag\Logs\Crash rule for all instances of DemoApp.exe\DemoApp__PID__6172__Date__09_10_2013__Time_10_48_10PM__153__Log.txt</p>
<p>In this table, a breakdown per exception type and count is displayed. Something like below:</p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;">**********************************</span></p>
<p><span style="font-size: x-small;">*&nbsp; EXCEPTION SUMMARY&nbsp; *</span></p>
<p><span style="font-size: x-small;">**********************************</span></p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp; |----------------------------------------|</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Count | Exception&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |----------------------------------------|</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 100&nbsp;&nbsp;| System.IndexOutOfRangeException |</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 100&nbsp;&nbsp;| System.ArgumentException&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 100&nbsp;&nbsp;| System.IO.FileNotFoundException |</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | 100&nbsp;| System.NullReferenceException&nbsp;&nbsp;&nbsp; |</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |----------------------------------------|</span></p>
<p>.</p>
<p>.</p>
<p>.</p>
<p>&nbsp;&nbsp;</p>
<p>Only the following information is logged each time an exception is caught:</p>
<p style="padding-left: 90px;"><strong>Date-Time</strong>:&nbsp; Date and Time when the exception was thrown.</p>
<p style="padding-left: 90px;"><strong>Exception kind</strong>: First or Second chance exception.</p>
<p style="padding-left: 90px;"><strong>Exception Code</strong>: Exception Code</p>
<p style="padding-left: 90px;"><strong>Causing Thread ID</strong>: ID of the thread that threw the exception</p>
<p style="padding-left: 90px;"><strong>Exception Type</strong>: For .NET exception, this is the type of the exception thrown&nbsp;</p>
<p style="padding-left: 90px;"><strong>Detail ID</strong>: ID used to classify each exception based on Type, Message, and Call Stack.&nbsp; Use this ID to look up the details in the &lsquo;Exception Details&rsquo; section.</p>
<p>&nbsp;</p>
<p>An example of this logging follows:</p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 9872. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with System ID: 8832.&nbsp; Type = System.IndexOutOfRangeException.&nbsp; DetailID = 2</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 10000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 8832. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with .&nbsp; Type = System.IndexOutOfRangeException.&nbsp; DetailID = 2</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 7712</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 10000. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with System ID: 7712.&nbsp; Type = System.IndexOutOfRangeException.&nbsp;DetailID = 2</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 7720</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 7712. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 4292</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with System ID: 7720.&nbsp; Type = System.ArgumentException.&nbsp; DetailID = 3</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with System ID: 4292.&nbsp; Type = System.ArgumentException.&nbsp; DetailID = 3</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 10976</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 7720. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 4292. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with .&nbsp; Type = System.ArgumentException.&nbsp; DetailID = 3</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 11700</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread exited. Exiting thread system id - System ID: 10976. Exit code - 0x00000000</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] First chance exception - 0XE0434352 caused by thread with System ID: 11700.&nbsp; Type = System.ArgumentException.&nbsp; DetailID = 3</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">[9/10/2013 10:48:21 PM] Thread created. New thread system id - System ID: 5308.</span></p>
<p>.</p>
<p>.</p>
<p>&nbsp;&nbsp;</p>
<p>An example of the &lsquo;Exception Details&rsquo; and &lsquo;Exception Summary&rsquo; sections follows:</p>
<p>&nbsp;</p>
<p>.</p>
<p>.</p>
<p>.</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">[9/10/2013 </span><span style="font-family: courier new,courier;">10:48:32 PM] Process exited. Exit code - 0x00000000</span></span></p>
<p>&nbsp;</p>
<p><span style="font-family: courier new,courier; font-size: x-small;">***********************</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">*&nbsp; EXCEPTION DETAILS&nbsp; *</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">***********************</span></p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">DetailID </span><span style="font-family: courier new,courier;">= 1</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Count:&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">1</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">System.IndexOutOfRangeException</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Message:&nbsp;</span><span style="font-family: courier new,courier;">IndexOutOfRangeException.</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stack:&nbsp;&nbsp;&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [HelperMethodFrame]</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object)</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart()</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [GCFrame]</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [DebuggerU2MCatchHandlerFrame]</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">DetailID</span><span style="font-family: courier new,courier;">= 2</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Count:&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">99</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">System.IndexOutOfRangeException</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Message:&nbsp;</span><span style="font-family: courier new,courier;">IndexOutOfRangeException.</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stack:&nbsp;&nbsp;&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [HelperMethodFrame]</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DemoApp.Program.IOORException() </span><span style="font-family: courier new,courier;">[c:\DemoApp\DemoApp\DemoApp\Program.cs @ 148]</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart_Context(System.Object)</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object)</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart()</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [GCFrame]</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [DebuggerU2MCatchHandlerFrame]</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">DetailID</span><span style="font-family: courier new,courier;">= 3</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Count:&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">100</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">System.ArgumentException</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Message:&nbsp;</span><span style="font-family: courier new,courier;">ArgumentException</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stack:&nbsp;&nbsp;&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [HelperMethodFrame]</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DemoApp.Program.AException()</span><span style="font-family: courier new,courier;">[c:\DemoApp\DemoApp\DemoApp\Program.cs @ 161]</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart_Context(System.Object)</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, </span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object)</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart()</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [GCFrame]</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [DebuggerU2MCatchHandlerFrame]</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">DetailID</span><span style="font-family: courier new,courier;">= 4</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Count:&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">31</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">System.IO.FileNotFoundException</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Message:&nbsp;</span><span style="font-family: courier new,courier;">Invalid file argument</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stack:&nbsp;&nbsp;&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [HelperMethodFrame]</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DemoApp.Program.FNFException()</span><span style="font-family: courier new,courier;">[c:\DemoApp\DemoApp\DemoApp\Program.cs @ 173]</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart_Context(System.Object)</span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext,</span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,</span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object, Boolean)</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext,</span><span style="font-family: courier new,courier;">System.Threading.ContextCallback, System.Object)</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Threading.ThreadHelper.ThreadStart()</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [GCFrame]</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [DebuggerU2MCatchHandlerFrame]</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">DetailID</span><span style="font-family: courier new,courier;">= 5</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Count:&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">69</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">System.IO.FileNotFoundException</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Message:&nbsp;</span><span style="font-family: courier new,courier;">Invalid file argument</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stack:&nbsp;&nbsp;&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (omitted)</span></p>
<p>&nbsp;</p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">DetailID</span><span style="font-family: courier new,courier;">= 6</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Count:&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">100</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Type:&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">System.NullReferenceException</span></span></p>
<p><span style="font-size: x-small;"><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Message:&nbsp;</span><span style="font-family: courier new,courier;">Null String</span></span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Stack:&nbsp;&nbsp;&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (omitted)</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>As explained in the beginning of this article, this feature could be disabled if it all affects the performance of the target process. &nbsp;When the feature is enabled, DebugDiag collects the exception code, type, message and callstack for every exception thrown. This may affect performance.&nbsp; We have specified some default values for exception rate per sec where it would be unacceptable in term of target process performance to leave the feature ON. However, these numbers are by no mean a norm.</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Debug Diag Blog Post Series from my French IIS Colleagues.</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debug-diag-blog-post-series-from-my-french-iis-colleagues</link>
      <pubDate>Fri, 15 Mar 2013 09:59:02 GMT</pubDate>
      <dc:creator><![CDATA[Finbar Ryan]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/03/15/debug-diag-blog-post-series-from-my-french-iis-colleagues/</guid>
      <description><![CDATA[Hello,       I just wanted to let you know that I’ve published a series of 8 blog posts on...]]></description>
      <content:encoded><![CDATA[<p>Hello,   <br />    <br />I just wanted to let you know that I’ve published a series of 8 blog posts on recommendations on how to use Debug Diagnostics to troubleshoot a series of issues.    <br />    <br />This content all came from my colleagues Emmanuel, Sylvain and Paul in the French team.    <br />They blog in both French and English at <a title="https://blogs.msdn.com/b/friis/" href="https://blogs.msdn.com/b/friis/">https://blogs.msdn.com/b/friis/</a> and they have a wealth of experience in troubleshooting IIS and Asp.Net production issues.     <br />    <br />Here’s a link to the each of the individual articles.    <br />    <br /><a title="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-generate-a-series-of-manual-hang-dumps-for-a-specific-process.aspx" href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-generate-a-series-of-manual-hang-dumps-for-a-specific-process.aspx" target="_blank">Debug Diagnostic 1.2 – Generate a series of manual hang dumps for a specific process</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-generate-a-manual-hang-dump-on-a-specific-process.aspx" target="_blank">Debug Diagnostic 1.2 – Generate a manual hang dump on a specific process</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-generate-a-manual-hang-dump-for-all-processes-owned-by-iis.aspx" target="_blank">Debug Diagnostic 1.2 – Generate a manual hang dump for all processes owned by IIS</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-creating-a-memory-leak-rule-unmanaged-code.aspx" target="_blank">Debug Diagnostic 1.2 – Creating a Memory Leak rule (unmanaged code)</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-performance-mode.aspx" target="_blank">Debug Diagnostic 1.2 – Creating a rule in Performance mode</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-crash-mode.aspx" target="_blank">Debug Diagnostic 1.2 – Creating a rule in crash mode</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-hang-mode-to-use-the-response-time-of-the-request-etw.aspx" target="_blank">Debug Diagnostic 1.2 – Creating a rule in Hang mode to use the response time of the request. (ETW)</a>    <br /><a href="https://blogs.msdn.com/b/debugdiag/archive/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-hang-mode-in-function-of-the-answer-time-ping.aspx" target="_blank">Debug Diagnostic 1.2 – Creating a rule in Hang mode in function of the answer time (Ping)</a></p>  <p>&#160;</p>  <p>Thanks for reading.   <br />    <br />Finbar Ryan (Debug Diag Blog Editor.)</p>]]></content:encoded>
    </item>
    <item>
      <title>Debug Diagnostic 1.2 – Creating a rule in Hang mode in function of the answer time (Ping)</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debug-diagnostic-1-2-creating-a-rule-in-hang-mode-in-function-of-the-answer-time-ping</link>
      <pubDate>Fri, 15 Mar 2013 09:48:55 GMT</pubDate>
      <dc:creator><![CDATA[Finbar Ryan]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-hang-mode-in-function-of-the-answer-time-ping/</guid>
      <description><![CDATA[This article will detail the action plan you can implement to create a rule in Debug Diagnostic 1.2...]]></description>
      <content:encoded><![CDATA[<p>This article will detail the action plan you can implement to create a rule in Debug Diagnostic 1.2 to automate the dump generation when a hang of the IIS server or of your application is occurring.
</p><p>This action plan can be applied when your W3WP.exe process or your application is hanged and that you are quickly aware of the situation to generate a dump yourself before the issue is gone. A hang of a process means the application is no longer responding within a normal execution time or is even not responding at all but the process is not crashing. This means there is no stop or restart of the process and you won't see any change to the Process ID.
</p><p>Debug Diag can use the answer time of a specific URL to generate a dump file.<br/>The main difficulty in this action plan is to decide what is the correct value to generate dumps. If you set a too high value, you'll never get a dump, however, if you set a too low value, you'll get tons of dumps which are may not be relevant to the issue you are trying to resolve.
</p><p style="background: #dbe5f1"><strong><em>Action Plan
</em></strong></p><ul><li>Debug Diagnostic 1.2 can be download at the following URL: <a href="https://www.microsoft.com/download/en/details.aspx?id=26798">https://www.microsoft.com/download/en/details.aspx?id=26798</a>
		</li><li>Once the tool has been installed and executed on the IIS server, the wizard "Select Rule Type" loads 
</li><li>Select "Performance", then click on "Next &gt;"
</li></ul><p>                
</p><ul><li><div>Select "HTTP Response Times", then click on "Next &gt;"
</div><p style="margin-left: 108pt">
			</p></li><li><div>Click on "Add URL"
</div><ul><li>Here we'll use the PING monitoring. This allows us to test the accessibility to a page of a web application at regular interval. If the page is not accessible, Debug Diag will generate a series of dumps
</li><li>In the "URL to ping" field, inform the page address facing the hang issue
</li><li>In the "Ping every" field, set 30 seconds
</li><li>In the "Timeout after" field, set 120 seconds
</li><li>Then click on "OK"
</li></ul></li></ul><p><span style="text-decoration:underline">Note</span>: Those values are just example values so you may need to change them depending on your scenario.
</p><p>                
</p><ul><li><div>Debug Diag offers you to test the specified URL to check it can correctly access to it. You can click on "yes"
</div><ul><li><div>Once the test has been completed, click on "OK"
</div><p style="margin-left: 72pt">
					</p></li></ul></li><li><div>Click on "Next &gt;"
</div><p style="margin-left: 72pt">                
</p></li><li><div>In the "Select Dump Targets" window
</div><ul><li>Click on "Add Dump Target"
</li><li>In the "Target Type" field, choose "Web application pool" and select the Application Pool which is facing the hang issue
</li><li>Click on "OK", and then on "Next &gt;"
</li></ul></li></ul><p>                 
</p><ul><li><div>Set the  "Configure UserDump Series" settings as followed:
</div><ul><li><span style="text-decoration:underline">Note 1</span>: You may need to change these values depending on your scenario.
</li><li><div><span style="text-decoration:underline">Note 2</span>: Here, we'll generate a Full UserDump every 10 seconds. A maximum of 3 dumps will be generated.
</div><p style="margin-left: 72pt">
					</p></li></ul></li><li><div>Choose a name and a location for dumps file, then click on "Next &gt;"
</div><ul><li>Setting those dumps on another disk than C:\ is possible<span style="text-decoration:underline">
					</span></li><li><span style="text-decoration:underline">Please check you have enough available space disk as the dump size will be equal to the memory consummed by the process you are monitoring
</span></li></ul></li></ul><p>                
</p><ul><li><div>In the window "Rule Completed", select "Activate the rule now", and then click on "Finish"
</div><ul><li>The rule is now configured and ready to generate dumps
</li></ul></li></ul><p>                
</p><ul><li><div>Check the status is "Active"
</div><ul><li>If it's not, The "DbgSvc" service is surely not started
</li><li>You can go in "Administrative Tools &gt; Services" and start it
</li></ul></li><li>When a dump will be generated, you'll see the column "UserDump Count" being incremented
</li></ul><p>The dumps are located by default in "C:\Program Files\DebugDiag\Logs\Rule_Name".
</p><p>
 </p><p>We hope this article will help you out.
</p><p>See you soon.
</p><p>Sylvain Lecerf and the French IIS Microsoft Support Team</p>]]></content:encoded>
    </item>
    <item>
      <title>Debug Diagnostic 1.2 – Creating a rule in Hang mode to use the response time of the request. (ETW)</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debug-diagnostic-1-2-creating-a-rule-in-hang-mode-to-use-the-response-time-of-the-request-etw</link>
      <pubDate>Fri, 15 Mar 2013 09:48:20 GMT</pubDate>
      <dc:creator><![CDATA[Finbar Ryan]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-hang-mode-to-use-the-response-time-of-the-request-etw/</guid>
      <description><![CDATA[This article will detail the action plan you can implement to create a rule in Debug Diagnostic 1.2...]]></description>
      <content:encoded><![CDATA[<p>This article will detail the action plan you can implement to create a rule in Debug Diagnostic 1.2 to automate the dump generation when a hang of the IIS server or of your application is occurring.
</p><p>This action plan can be applied when your W3WP.exe process or your application is hanged and that you are quickly aware of the situation to generate a dump yourself before the issue is gone. A hang of a process means the application is no longer responding within a normal execution time or is even not responding at all but the process is not crashing. This means there is no stop or restart of the process and you won't see any change to the Process ID.
</p><p>Debug Diag can use the execution time of specific requests to generate a dump file.<br/>The main difficulty in this action plan is to decide what is the correct value to generate dumps. If you set a too high value, you'll never get a dump, however, if you set a too low value, you'll get tons of dumps which are may not be relevant to the issue you are trying to resolve.
</p><p style="background: #dbe5f1"><strong><em>Action Plan
</em></strong></p><ul><li>Debug Diagnostic 1.2 can be download at the following URL: <a href="https://www.microsoft.com/download/en/details.aspx?id=26798">https://www.microsoft.com/download/en/details.aspx?id=26798</a>
		</li><li>Once the tool has been installed and executed on the IIS server, the wizard "Select Rule Type" loads 
</li><li>Select "Performance", then click on "Next &gt;"
</li></ul><p>                
</p><ul><li><div>Select "HTTP Response Times", then click on "Next &gt;"
</div><p style="margin-left: 108pt">
			</p></li><li><div>Click on "Add URL"
</div><ul><li>Here we'll use the ETW monitoring. This allows us to monitor every incoming requests on the IIS server and to generate a dump if a request is taking more time to be executed than the one specified in the "Timeout after" field
</li><li><div>In the "Partial URL segment to match" field, use the URL or the page which is representative of the performance issue:
</div><ul><li>A general rule of thumb would be that typically it's the page with the biggest time-taken in the IIS logs file
</li><li>In the example below we'll monitor all ASPX pages
</li></ul></li><li>In the "Timeout after" field, set a value matching the time-taken but it needs to be less than the maximum time the request can take to be executed
</li></ul></li></ul><p>                
</p><ul><li><div>If you have set a Timeout which is less than 30 seconds, you'll get the following message:
</div><ul><li><div>It can be ignored, just click on "Yes"
</div><p style="margin-left: 72pt">
					</p></li></ul></li><li><div>Click on "Next &gt;"
</div><p style="margin-left: 72pt">                
</p></li><li><div>In the "Select Dump Targets" window
</div><ul><li>Click on "Add Dump Target"
</li><li>In the "Target Type" field, choose "Web application pool" and select the Application Pool which is facing the hang issue
</li><li>Click on "OK", and then on "Next &gt;"
</li></ul></li></ul><p>                 
</p><ul><li><div>Set the  "Configure UserDump Series" settings as followed and click on "Next &gt;":
</div><ul><li><span style="text-decoration:underline">Note 1</span>:  You may need to change these values depending on your scenario.
</li><li><div><span style="text-decoration:underline">Note 2</span>: Here, we'll generate a Full UserDump every 10 seconds. A maximum of 3 dumps will be generated.
</div><p style="margin-left: 72pt">
					</p></li></ul></li><li><div>Choose a name and a location for dumps file, then click on "Next &gt;"
</div><ul><li>Setting those dumps on another disk than C:\ is possible<span style="text-decoration:underline">
					</span></li><li><span style="text-decoration:underline">Please check you have enough available space disk as the dump size will be equal to the memory consumed by the process you are monitoring
</span></li></ul></li></ul><p>                
</p><ul><li><div>In the window "Rule Completed", select "Activate the rule now", and then click on "Finish"
</div><ul><li>The rule is now configured and ready to generate dumps
</li></ul></li></ul><p>                
</p><ul><li><div>Check the status is "Active"
</div><ul><li>If it's not, The "DbgSvc" service is probably not started
</li><li>You can go in "Administrative Tools &gt; Services" and start it
</li></ul></li><li>When a dump will be generated, you'll see the column "UserDump Count" being incremented
</li></ul><p>The dumps are located by default in "C:\Program Files\DebugDiag\Logs\Rule_Name".
</p><p>
 </p><p>We hope this article will help you out.
</p><p>See you soon.
</p><p>Sylvain Lecerf and the French IIS Microsoft Support Team
</p>]]></content:encoded>
    </item>
    <item>
      <title>Debug Diagnostic 1.2 – Creating a rule in crash mode</title>
      <link>https://docs.microsoft.com/archive/blogs/debugdiag/debug-diagnostic-1-2-creating-a-rule-in-crash-mode</link>
      <pubDate>Fri, 15 Mar 2013 09:47:52 GMT</pubDate>
      <dc:creator><![CDATA[Finbar Ryan]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/debugdiag/2013/03/15/debug-diagnostic-1-2-creating-a-rule-in-crash-mode/</guid>
      <description><![CDATA[This article will detail the action plan you can implement to create a rule in Debug Diagnostic 1.2...]]></description>
      <content:encoded><![CDATA[<p>This article will detail the action plan you can implement to create a rule in Debug Diagnostic 1.2 to automate a dump generation when an IIS process is crashing (in example a "W3WP.exe" process).
</p><p>This action plan can be applied when your W3WP.exe process is crashing which means, in an IIS context, the specified process has been killed or restarted for an obscure reason. This implies a stop of the process and if it has been restarted, a change in the Process ID. You really have to make the difference between a crash and a hang, as configuring a crash rule if you are facing a hang will not generate any dumps.
</p><p style="background: #dbe5f1"><strong><em>Action Plan
</em></strong></p><ul><li>Debug Diagnostic 1.2 can be download at the following URL: <a href="https://www.microsoft.com/download/en/details.aspx?id=26798">https://www.microsoft.com/download/en/details.aspx?id=26798</a>
		</li><li>Once the tool has been installed and executed on the IIS server, the wizard "Select Rule Type" loads 
</li><li>Select "Crash" and then click on "Next &gt;"
</li></ul><p>                    
</p><ul><li><div>In the window "Select Target Type"
</div><ul><li><div>Check "A specific IIS web application pool", then click on "Next &gt;"
</div><p>This will have for effect to only generate a dump on the W3WP.exe process corresponding to your Application Pool
</p><ul><li>If you want to monitor every processes owned by IIS, you can select "All IIS/COM+ related processes"
</li><li><div>You can also select "A specific process" to monitor every instances of a process or just a unique one (a specific process with a specific PID)
</div><p>The drawback of "A specific process" for a unique instance is you need to recreate the rule each time the process is restarted as his PID would have changed
</p><p>
 </p></li></ul></li></ul></li></ul><p>                <br/>
	</p><ul><li><div>Select the Application Pool facing the crash issue, then click on "Next &gt;"
</div><p style="margin-left: 108pt">
			</p></li><li><div>Add the breakpoint as you can see in the below screenshot
</div><ul><li>This allows you to generate a dump as soon as the command "TerminateProcess" is sent in the process without waiting for a complete stop
</li><li><div>In addition, if a problem is detected by WAS in the process, it will stop it with this command, so without this breakpoint, no dump will be generated while the process is facing a crash
</div><p>
 </p></li></ul></li></ul><p>                
</p><p>
 </p><ul><li><div>Then click on "Next &gt;"
</div><p>
 </p></li></ul><p>                
</p><p>
 </p><ul><li><div>Choose a name and a location for dumps file, then click on "Next &gt;"
</div><ul><li>Setting those dumps on another disk than C:\ is possible<span style="text-decoration:underline">
					</span></li><li><div><span style="text-decoration:underline">Please check you have enough available space disk as the dump size will be equal to the memory consumed by the process you are monitoring
</span></div><p>
 </p></li></ul></li></ul><p>                
</p><p>
 </p><ul><li><div>In the window "Rule Completed", select "Activate the rule now", and then click on "Finish"
</div><ul><li><div>The rule is now configured and ready to generate dumps
</div><p>
 </p></li></ul></li></ul><p>                
</p><p>
 </p><ul><li><div>Check the status is "Active"
</div><ul><li>If it's not, The "DbgSvc" service is surely not started
</li><li>You can go in "Administrative Tools &gt; Services" and start it
</li></ul></li><li>When a dump will be generated, you'll see the column "UserDump Count" being incremented
</li></ul><p>The dumps are located by default in "C:\Program Files\DebugDiag\Logs\Crash rule for all IIS_COM+ related processes" or in "C:\Program Files\DebugDiag\Logs\Rule_Name".
</p><p>
 </p><p>We hope this article will help you out.
</p><p>See you soon.
</p><p>Sylvain Lecerf and the French IIS Microsoft Support Team
</p>]]></content:encoded>
    </item>
  </channel>
</rss>