Hi list,
Apologies for a slightly O/T post. I'm in the process of
investigating how to _best_ extract diagnostic information from
production applications. The only information I am interested in is:
- Time spent on RPCs (database, fetching from remote web APIs, etc.)
- Wall Time
- CPU time
I thought of XDebug - but I was worried it might be too much overhead
for production, since I will be running it for 1-10% of all requests*.
If you have any data on this, I'd be interested to hear it ;) In a
perfect world, what I would like to do is to be able to register hooks
on functions so that I can just start and stop timers:
<?php
function my_callback_function($function_name, [args]) {
// Can start and stop timers here.
}
function my_callback_function_exit($function_name, [args]) {
// Can start and stop timers here.
}
register_callback_function_start('mysql_query', 'my_callback_function');
register_callback_function_exit('mysql_query', 'my_callback_function_exit');
register_callback_function_start('file', 'my_callback_function');
register_callback_function_exit('file', 'my_callback_function_exit');
?>
Reading the Xdebug source, this should be fairly easy to do?
* To pretext questions - I need online analysis - PHP code without
affinity can scale well by adding webservers, but databases and
external requests are going to behave differently as load traffic changes.
- Morgan
Received on Tue Jul 28 2009 - 19:28:07 BST
This archive was generated by hypermail 2.2.0 : Mon Jun 25 2018 - 06:00:04 BST