Windbg程序调试系列4-Live Debugging

上篇博文中给大家分享了使用Windbg分析线程阻塞问题:

Windbg程序调试系列3-线程阻塞问题

本篇中我们继续,跟大家分享附加进程实时调试-Live Debugging。

先说一下使用Windbg附加进程实时调试的应用场景和注意事项

应用场景:

集成测试环境,影响异常后,分析异常和线程上下文的执行堆栈、参数情况;

生产环境:短时间内调试程序异常,查看异常上下文和参数,但是调试时间不能太久。

注意事项:附加进程调试会阻塞请求,调试后新的请求被阻塞住,前端调用受影响,因此要谨慎、权衡利弊,开发测试环境可以,生产环境要谨慎。

附加进程实时调试的套路:

F6 Attache进程

加载SOS, .loadby sos clr

启用异常捕获 sxe clr

运行,捕获&查看异常 g  !pe

查看异常所在线程堆栈!clrstack, 查看异常所在线程堆栈的参数和变量 !clrstack -a / !dso

禁用异常捕获 sxd clr

退出调试 qd

动手实操:

1. F6 Attache进程

打开Windbg,按下F6键,选择要调试的进程,支持输入进程ID:

Windbg程序调试系列4-Live Debugging

2. 加载SOS, .loadby sos clr

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsxzfy.html