Create Agility Crash Dump

From Agility
Revision as of 10:40, 25 July 2016 by Marcin (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Note: Make sure the dump is not generated by an application pool recycle by checking the event log.

If the operating system is 32-bit, install the 32 bit DebugDiagx86.msi. For 64 bit operating system choose the DebugDiagx64.msi.

  • Execute DebugDiag 2.0 Collection on the IIS server, the wizard "Select Rule Type" loads
  • Select "Crash" and then click on "Next >"

SelectRuleType.png

  • In the window "Select Target Type"
    • Check "A specific IIS web application pool", then click on "Next >"

This will have for effect to only generate a dump on the W3WP.exe process corresponding to your Application Pool

  • If you want to monitor every processes owned by IIS, you can select "All IIS/COM+ related processes"
  • 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)

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

TargetType.png

  • Select the Application Pool facing the crash issue, then click on "Next >" For your site, it should be AgilityNET2

SelectTarget.png

  • Add the breakpoint as you can see in the below screenshot
    • This allows you to generate a dump as soon as the command "TerminateProcess" is sent in the process without waiting for a complete stop
    • 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

ConfigureBreakpoint.jpg

  • Then click on "Next >"

AdvancedConfiguration.png

  • Choose a name and a location for dumps file, then click on "Next >"
    • Setting those dumps on another disk than C:\ is possible
    • 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

SelectDumpLocation.png

  • In the window "Rule Completed", select "Activate the rule now", and then click on "Finish"
    • The rule is now configured and ready to generate dumps

RuleCompleted.png

  • Check the status is "Active"
    • If it's not, The "DbgSvc" service is surely not started
    • You can go in "Administrative Tools > Services" and start it
  • When a dump will be generated, you'll see the column "UserDump Count" being incremented

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".

If you see the following dialog box, choose No because we only need to generate dump files.

DebugDiagnosticTool.jpg