Hi, I would like the opinion of the readers of this list on whether or not they agree on the usefullness of adding some new functions to the core of PHP. Background Info: I want more debug-information from my scripts. And I want to perform lengthy operations in a more robust way. And I want to monitor such operations in real-time, with points of interest highlighted, from a webbrowser, using jquery ajax calls. For instance, when 1000 items are being processed and 10 fail, i want those listed (with full details) instead of them cancelling the rest of the operation. For each lengthy operation, i want to keep track of: - $operationName, $contextName - a full trace, with per function the (timing-)stats, arguments, errors (possibly including notices), and results. - the ability to monitor the operation flow from a webbrowser (using ajax calls) in realtime. - the ability to store such logs (filtered or not) in a database via adodb.sf.net, or in a file (json / plaintext), or to email them. I'm considering to release the library i'm building for this as LGPL, including a viewer. Problem description: To enable a full trace i need to call a function that i create, on entry of any other function, and on exit of such a function. Obviously adding (even simple, standard) calls to every function i use is too cumbersome, and i'd miss all the php built-in functions. The simplest solution to this imo, is to add this to the core of PHP: $oldTraceHandlerFunctionName = set_trace_handler ( $handlerFunctionName = 'traceHandler', $functionList = array ( 'functionName', .... ) OR (default:)null=monitor all functions, ); function traceHandler ( $file = string;fullpath, $lineNumber = integer, $functionName = string, $eventIsStartOfFunction=boolean, // false = being called at exit of the function $arguments = array( '[&]$argumentVariableName' => anyVariable, .... ), $localVariables = array( 'localVariableName' => anyVariable, .... ) ) { //do something } If you have any improvements for this mockup, please post them as reply. While there are the profiling functions of http://nl2.php.net/manual/en/function.apd-set-pprof-trace.php, I would nevertheless to propose adding of the new capabilities listed above here, for people who don't have enough control over their webserver to install the requirements of apd-set-pprof-trace. Also, i haven't looked into it yet, but converting the apd-set-pprof-trace data to any other format seems to be difficult to do in realtime because it writes such data to disk. Turning such data into your own format in realtime will be prone to slowness &/ errors. I'll also look at using apd-set-pprof-trace, since none of this is likely to be implemented soon.. I'll post updates to this thread if i solve that puzzle.