This is an old revision of the document!
Introduction
This page is to describe details as to the usage of gdb with Kamailio.
Timer-Triggered Debugging
If you wish to debug a function that is triggered by a timer (e.g., tm/dialog callbacks issued from transaction timeouts) you need to attach gdb to the Kamailio timer process. Specifically, you cannot simply start the Kamailio binary from gdb since the initial Kamailio process does not handle timeouts. Consequently, breakpoints you set on the initial process which you expect to fire won't do so if they are timer-triggered.
Unfortunately, you cannot tell from the list of Kamailio processes which one corresponds to the timer process. On my system with worker processes disabled, it is the second kamailio process though.