Re: Patch and RFC for adding DTrace probes to PHP
| From: | Alexey Zakhlestin | Date: | Wed, 15 Jul 2009 06:01:54 +0000 |
| Subject: | Re: Patch and RFC for adding DTrace probes to PHP | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-44970@lists.php.net to get a copy of this message | ||
On Wed, Jul 15, 2009 at 1:31 AM, David Soria
Parra<david.soriaparra@sun.com> wrote:
> Hi List,
>
> in the last months I worked on adding DTrace probes to PHP and would
> like to start a discussion about the RFC and patch against trunk
> that can be found at:
>
> http://wiki.php.net/rfc/dtrace
>
> DTrace is a dynamic tracing framework for Solaris, OpenSolaris, Mac OSX
> and FreeBSD that can be used to trace running applications on a system
> based on instrumentation points in the kernel and the application.
Also, there is an ongoing effort of adding DTrace support to linux.
Blog of the author: http://www.crisp.demon.co.uk/blog/index.html
> The patch aims to include static probes into PHP which will better reflect
> PHP execution from a user persective. At the moment PHP can only be
> traced with deep knowledge of the executor and it's functions.
>
> The patch is based on recent trunk and can be found at:
>
> http://patches.experimentalworks.net/dtrace.patch
>
> In the current state the patch introduces a wrapper for the current
> executor to fire function-entry probes. It was mentioned that it might
> be useful to not use an own funciton for that. As I want to make things
> cleaner for the current state of review, I decided to use a separate
> function.
>
> The patch was tested on Mac OS 10.5, Solaris 10 and OpenSolaris 2009.06.
The patch is simple and clean. Just 2 notices..
1) Zend/zend_dtrace.h file is generated. Are you sure it should be the
part of patch?
2) Probes would benefit from having more details (exception-messages,
function-arguments, etc.)
Other than that, I am all for including this in trunk. Earlier we have
it — earlier we can start tuning it :)
--
Alexey Zakhlestin
http://www.milkfarmsoft.com/