<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Mon, 20 May 2013 23:17:33 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Chris Jones: Adding DTrace Probes to PHP Extensions]]></title>
      <guid>http://www.phpdeveloper.org/news/18859</guid>
      <link>http://www.phpdeveloper.org/news/18859</link>
      <description><![CDATA[<p>
In a new post to his site (related to the topic of <a href="http://phpdeveloper.org/news/18846">this</a> previous post) <i>Chris Jones</i> shows you how to <a href="https://blogs.oracle.com/opal/entry/adding_dtrace_probes_to_php">setup and use DTrace support</a> in your PHP installation for enhanced debugging abilities.
</p>
<blockquote>
The powerful DTrace tracing facility has some PHP-specific probes that can be enabled with --enable-dtrace. DTrace for Linux is being created by Oracle and is currently in <a href="https://blogs.oracle.com/linux/entry/dtrace_for_oracle_linux_news">tech preview</a>. Currently it doesn't support userspace tracing so, in the meantime, Systemtap can be used to monitor the probes implemented in PHP. This was recently outlined in David Soria Parra's post <a href="http://blog.experimentalworks.net/2012/12/probing-php-with-systemtap-on-linux/">Probing PHP with Systemtap on Linux</a>.
</blockquote>
<p>
His examples are using the Oracle flavor of linux, but they should work for just about any unix-based system out there. He installs the tool via a yum package and compiles the latest PHP source with the "enable-dtrace" flag. He includes a simple script to connect to an Oracle database and shows the contents of the resulting "functrace.stp". He also shows how he added more "prodbes" (the points DTrace uses to profile) into the OCI8 extension for PHP (steps and source included).
</p>]]></description>
      <pubDate>Fri, 07 Dec 2012 09:35:09 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[David Parra: Probing PHP with Systemtap on Linux]]></title>
      <guid>http://www.phpdeveloper.org/news/18846</guid>
      <link>http://www.phpdeveloper.org/news/18846</link>
      <description><![CDATA[<p>
<i>David Parra</i> has a new post to his site today about a method of <a href="http://blog.experimentalworks.net/2012/12/probing-php-with-systemtap-on-linux/">using Systemtap to profile PHP</a> as the code executes (as an alternative when <a href="http://docs.oracle.com/cd/E19253-01/817-6223/index.html">DTrace</a> may not be available.
</p>
<blockquote>
PHP introduced DTrace support with PHP 5.3, enabling probing points in the PHP executable that can be used to simplify probing of PHP applications without having to the PHP implementation details. We enabled probes on function calls, file compilation, exceptions and errors. But this has always been limited to the operating systems that support DTrace. With the popularity of DTrace, Systemap programmers decided to add a DTrace compatibility layer that allows to use DTrace probes as Systemtap probing points as well.
</blockquote>
<p>
Thanks to a recent commit to the PHP 5.5 branch, your PHP installation (compiled with DTrace support) can be executed with the "stap" command and searched for probe points. He includes a simple Systemtap script that counts the calls of a specific function to get you started. 
</p>]]></description>
      <pubDate>Wed, 05 Dec 2012 10:41:30 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[David Soria Parra's Blog: PHP 5.3.99-dev and DTrace Part I]]></title>
      <guid>http://www.phpdeveloper.org/news/14436</guid>
      <link>http://www.phpdeveloper.org/news/14436</link>
      <description><![CDATA[<p>
As <i>David Soria Parra</i> mentions in a recent post to his blog, the DTrace functionality <a href="http://blog.experimentalworks.net/2010/04/php-5-3-99-dev-and-dtrace-part-i/">has been backported</a> to the PHP 5.3 branch and gives developers a bit more information about what's happening inside their applications.
</p>
<blockquote>
For those not following the PHP development. We backported the DTraces probes from the abandoned PHP 6.0 branch, back to the new trunk PHP 5.3.99-dev. It is called 5.3.99 because the PHP dev community has not decided yet on a version number (5.4 or 6.0).
</blockquote>
<p>
He gives the configure line to get it working on Solaris and Mac OSX and a sample line of code to ensure everything's working correctly. The results show the full execution of the example. This functionality can replace <a href="http://pecl.php.net/package/DTrace">this extension</a> from the PECL repository.
</p>]]></description>
      <pubDate>Thu, 29 Apr 2010 12:17:32 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[IBuildings techPortal: Analysing PHP web applications with dtrace]]></title>
      <guid>http://www.phpdeveloper.org/news/13587</guid>
      <link>http://www.phpdeveloper.org/news/13587</link>
      <description><![CDATA[<p>
On the IBuildings techPortal today there's <a href="http://techportal.ibuildings.com/2009/11/24/analysing-php-web-applications-with-dtrace/">a new podcast posted</a> in the Dutch PHP Conference series - <i>David Soria Parra</i>'s talk on analyzing web applications with <A href="http://en.wikipedia.org/wiki/DTrace">Dtrace</a>.
</p>
<blockquote>
DTrace is the Swiss army knife to analyze the behavior of applications and enabling you to gather detailed information from the bottom of your application stack up to the top. DTrace is used by system administrators and developers, on Solaris, Mac OSX and FreeBSD, to do in-depth analysis of an application, to find and reduce performance bottlenecks and problems in productive system. The talk will give an introduction how to use DTrace's capabilities in web development, reflect the current state of DTrace support in PHP and show examples how to trace PHP script in production.
</blockquote>
<p>
You can listen to this latest episode via their <a href="http://techportal.ibuildings.com/2009/11/24/analysing-php-web-applications-with-dtrace/">in-page player</a>.
</p>]]></description>
      <pubDate>Wed, 25 Nov 2009 09:19:07 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Experimentalworks Blog: DTracing PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/11612</guid>
      <link>http://www.phpdeveloper.org/news/11612</link>
      <description><![CDATA[<p>
On the Experimentalworks blog a <a href="http://blog.experimentalworks.net/archives/98-DTracing-PHP.html">recent post</a> looks at using DTrace, the powerful tool to debug and trace problems in an application, with your PHP applications.
</p>
<blockquote>
Dtrace is really powerful and trying to do an introduction to all it's features is just not possible. Therefore I will just focus on the basics, that are needed to get our stuff working. The basic idea behind Dtrace is that the kernel and userland programs fire probes on a specific location in the kernel or the userland program.
</blockquote>
<p>
He looks at the structure of a DTrace program as well as a list of probes that you can use to help track down the problem in your application. His "first example" traces the compile time of the app and, when run on the command line, returns the time in seconds.
</p>]]></description>
      <pubDate>Mon, 22 Dec 2008 15:19:10 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Johannes Schluter's Blog: DTraceing around]]></title>
      <guid>http://www.phpdeveloper.org/news/11195</guid>
      <link>http://www.phpdeveloper.org/news/11195</link>
      <description><![CDATA[<p>
After singing the praises of <a href="http://opensolaris.org/os/community/dtrace/">DTrace</a> for a while now, <i>Johannes Schluter</i> decided to show it off in a different way - introducing a <a href="http://blog.uxebu.com/">collegue</a> to it:
</p>
<blockquote>
Yesterday, during a break at the <a href="http://www.barcampmunich.de/">Barcamp Munich</a>, I gave <a href="http://blog.uxebu.com/">Wolfram</a> a short introduction on his Mac and decided to put some stuff here [in this post]. DTrace is a toolkit available on Solaris (Solaris 10 or OpenSolaris), recent MacOS versions and FreeBSD for mightier than tools like truss or strace but with way less impact. DTrace allows you to "hook" (called "probes") into the system and allows to do some analysis then.
</blockquote>
<p>
He shows how to set up some of these "hooks" using D-script to wrap around a simple PHP script call. He alters the results to show things like the memory function its in, how much of the memory its using and a fun little script that "graphs" out the memory usage with "@" symbols. 
</p>]]></description>
      <pubDate>Mon, 13 Oct 2008 11:14:35 -0500</pubDate>
    </item>
  </channel>
</rss>
