I use Linux Apache1.3/mod_perl/mason, dbd::mysql.

Is there a way to show a trace of an incoming request,
and ALL the components called (perl subroutines etc),
with their start times and end times.

(if there is no way, I am interested in authoring,
 with some guidance/assistance, a third party software to do so,
 so if anybody is interested, please let me know)

This information would help greatly with tracking down blocking,
or slow components.

An example output of what would be useful:
1. top-level-component.pl                10ms
2.  header-component.pl                  15ms
3.   navigation-component.pl             25ms
4.    db-request-component.pl           300ms
5.     html-output.pl                    75ms
6.      footer.pl                        10ms

I haven't seen anything that can do that, the closest thing was running an actual 
truss/strace/trace on a single process, which doesn't quite return what I am searching 
for (unless somebody knows how to tweak the output better than I), as well as it 
wouldn't be able to do this for all the development machine's requests
.

The intention would be to either log this information on a per request basis for a 
development machine, or possibly even displaying the information at the base of each 
page during development.

Reply via email to