开发者

running gdb on a web server

Using gdb, I am trying to trace the function calls of a web开发者_高级运维 server. I set breakpoints on every function call and when I tell gdb to 'run' it breaks at all the right places while the server starts up. Then gdb says 'Program ended with code 01' and doesn't stop at breakpoints anymore (obviously). However, the web server is still running.

I want to be able to trace the function calls made on an incoming HTTP request, so just breaking during server startup is useless to me.

Is there some trick to using gdb when tracing a daemon server so that it doesn't just end like above?


You didn't say which server you are trying to trace, but likely it is Apache.

Detailed instructions are here. Note the -X command line argument, which prevents httpd from forking children.

Also note that the instructions are the first result for this search.


set follow-fork-mode child

see https://sourceware.org/gdb/onlinedocs/gdb/Forks.html for example

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜