APD Функции
Contact information
If you have comments, bugfixes, enhancements or want to help developing this beast, you can send an mail to » apd@mail.communityconnect.com. Any help is very welcome.
Содержание
- apd_breakpoint — Stops the interpreter and waits on a CR from the socket
- apd_callstack — Returns the current call stack as an array
- apd_clunk — Throw a warning and a callstack
- apd_continue — Restarts the interpreter
- apd_croak — Throw an error, a callstack and then exit
- apd_dump_function_table — Outputs the current function table
- apd_dump_persistent_resources — Return all persistent resources as an array
- apd_dump_regular_resources — Return all current regular resources as an array
- apd_echo — Echo to the debugging socket
- apd_get_active_symbols — Get an array of the current variables names in the local scope
- apd_set_pprof_trace — Starts the session debugging
- apd_set_session_trace — Starts the session debugging
- apd_set_session — Changes or sets the current debugging level
- apd_set_socket_session_trace — Starts the remote session debugging
- override_function — Overrides built-in functions
- rename_function — Renames orig_name to new_name in the global function table
Коментарии
If pprofp reports 'No such file or directory', it's probably because it contains an incorrect path to your php client. Open pprofp in your fav editor, edit the first line, and try again.
Some useful links on APD:
1. Profiling PHP Applications ( http://www.schlossnagle.org/~george/talks/Profiling-phpworks-2004.pdf ), [1.40 MB], George Schlossnagle, 2004-09-23
2. PHP Performance Profiling ( http://www.linuxjournal.com/article/7213 ), [13.16 KB], Jonathan Oxer, 2003-10-21
3. APD Wiki ( http://www.wiki.cc/php/Apd )
HTH,
R. Rajesh Jeba Anbiah
Locate the root-cause of defects, fast.
If you need to locate the source of a defect in complicated web-based PHP applications with lots of conditional includes (osCommerce and Zen-Cart are reasonably complex), use APD to create a profile dump.
Then filter the dump for lines containing "!" to produce a list of included (required) files in the order they were included.
On my Win98 dev box I use: find "!" dumpfile > trace_program.txt
I use the trace_program.txt to backtrack to the root-cause of defects appearing in the browser. Great for maintaining systems you did not build yourself.
if you are looking for better/different alternatives to APD, check the xdebug website http://www.xdebug.org or download it from PECL http://pecl.php.net/xdebug
There seem to be a mistake with the name of the apd_set_socket_session_trace function. In the latest build (version 1.0.1) of apd for PHP, the function is called apd_set_session_trace_socket.
The APD pecl page also have some problems. Some of the links direct you to some adt pages.