A good start is probably clientReadRequest, however be warned that Squid
uses an asyncronous I/O model with extensive use of callbacks, so
following the long term execution thread or a request is not that easy
with a debugger.
A better trace method is probably to enable debug tracing. "squid -k
debug", and then read the trace in cache.log.
-- Henrik Nordstrom Squid Hacker Bhanu prakash wrote: > > Hi , > I understand .. But what I am interested is tracing the functions at the source level. I could see the syscall trace as you showed it to be.. > May be I am unaware of where to start off with a break point or which function of source should I specify to trace.. Any Help?!! > > Thanks, > Bhanu > > ------------- Original Message -------------- > Henrik Nordstrom <hno@hem.passagen.se> wrote: > To:Bhanu prakash <bhanu207@rediffmail.com> > From:Henrik Nordstrom <hno@hem.passagen.se> > Date:Fri, 06 Apr 2001 03:11:06 +0200 > CC:"squid-users@squid-cache.org" <squid-users@squid-cache.org> > Subject:Re: [squid-users] Tracing execution of Squid. > > Then your browser are probably not contacting Squid. > > There is nothing special about tracing Squid. The only thing you have to > remember is that Squid uses a kind of "cooperative multitasking" model > internally where a handler gets called when there is data available on a > filehandle. > > Function flow is basically: > > * A handler is registered with comm_set_select() > * comm_poll/comm_select() calls registered handles when needed > * The handler reads/writes the pending data, and then one or more other > handlers are regisered with comm_select() to handle further processing > of the data (i.e. writing received data to the client). > > A typical syscalltrace looks like: > > poll() > read(some fd,...) > read(some other fd, ...) > write(yet some other fd, ...) > poll() > write(...) > read(...) > write(...) > poll() > .... > > If async-io/aufs is enabled then poll() will be called more frequently > with a short timeout. > > -- > Henrik Nordstrom > Squid Hacker > > Bhanu prakash wrote: > > > > Hi, > > How do I trace the execution of Squid.? I see my debugger showing only poll() and not moving any forward even when the browser successfully loads the page. So,I am not able to track down the process even if it is running.... > > > > Thanks, > > Bhanu. > > > > _____________________________________________________ > > Chat with your friends as soon as they come online. Get Rediff Bol at > > http://bol.rediff.com > > _____________________________________________________ > Chat with your friends as soon as they come online. Get Rediff Bol at > http://bol.rediff.comReceived on Fri Apr 13 2001 - 02:10:52 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:59:18 MST