debug-recipes
debug-recipes copied to clipboard
My notes collected while debugging various problems in .NET and native applications.
Debug Recipes
It is a repository of my field notes collected while debugging various .NET application problems on Windows (mainly) and Linux. They do not contain much theory but rather describe tools and scripts with some usage examples.
The :floppy_disk: icon before a section name means that materials in a given section are no longer updated and may be outdated.
I hope you will find the materials helpful. Any contribution is welcome.
:point_right: I also authored the .NET Diagnostics Expert course, available at Dotnetos :hot_pepper: Academy. Apart from the theory, it contains lots of demos and troubleshooting guidelines. Check it out if you're interested in learning .NET troubleshooting. 👈
General advice
Make sure you have valid symbols configuration in your system. If you are debugging a .NET application you may first check the .NET debugging tips.
Troubleshooting
Application execution problems
- Exceptions and Windows errors
- Network connectivity problems
- Managed memory leaks
- Monitoring CPU usage (on- and off-CPU time)
- (Dead)locks
- Assembly loading issues
Database connectivity
- :floppy_disk: Debugging ADO.NET
- :floppy_disk: Tracing MySql connector
.NET Web Applications
- Diagnosing ASP.NET Core
- :floppy_disk: Profiling ASP.NET
- :floppy_disk: Diagnosing Nancy
- :floppy_disk: Debugging ASP.NET
System
- Debugging Windows kernel
Databases
MS SQL Server | MySQL | |
---|---|---|
Slow queries | X | X |
Blocked requests | X | X |
Indexes problems | X | X |
I/O problems | X | |
Server problems | X | X |
IIS
- :floppy_disk: Troubleshooting IIS7+
- :floppy_disk: Troubleshooting IIS6
- :floppy_disk: Troubleshooting IIS Express
Tools & techiniques
- WinDbg
- LLDB
- :floppy_disk: Visual Studio (debugging)
- Basic reversing tips
- Reversing in PowerShell