<?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>Wed, 23 May 2012 17:53:17 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[ThinkPHP Blog: MySQLnd Plugins: Writing a MySQL Query Logger in PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/14981</guid>
      <link>http://www.phpdeveloper.org/news/14981</link>
      <description><![CDATA[<p>
On the ThinkPHP blog there's <a href="http://blog.mayflower.de/archives/578-MySQLnd-Plugins-Writing-a-MySQL-Query-Logger-in-PHP.html">a recent post</a> looking at writing a query logger in PHP as a mysqlnd plugin using the <a href="http://pecl.php.net/package/mysqlnd_uh/">mysqlnd_uh</a> extension.
</p>
<blockquote>
A new approach to implementing a query logger and potentially more complex features such as monitoring or read/write-splitting is the MySQLnd Userland Handler Extension (mysqlnd_uh, <a href="http://pecl.php.net/package/mysqlnd_uh/">pecl website</a>). The extension lets you register a PHP class as a proxy for every <a href="http://docs.php.net/manual/en/book.mysqlnd.php">MySQLnd</a> connection. Every call to a function to MySQLnd (usually indirect through mysqli, mysql, pdo_mysql) is passed to the PHP class, which then calls the original MySQLnd function.
</blockquote>
<p>
They give a simple example to start - a logging function and how to configure it - followed by a more real-world scenario of logging inside of a project plugin.
</p>]]></description>
      <pubDate>Wed, 18 Aug 2010 11:10:15 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[phpRiot: Zend Framework 101: Zend_Log]]></title>
      <guid>http://www.phpdeveloper.org/news/12326</guid>
      <link>http://www.phpdeveloper.org/news/12326</link>
      <description><![CDATA[<p>
Next up in the phpRiot "Zend Framework 101" series is <a href="http://www.phpriot.com/articles/zend-log">this new look</a> at the logging component of the Zend Framework - Zend_Log.
</p>
<blockquote>
This article shows you how to use Zend_Log, the logging component of the Zend Framework. It allows you to record messages from your application however you please. In this article I will show you how to record messages to a log file. Additionally, if you use the Firebug and FirePHP plug-ins for Firefox, Zend_Log can be extremely useful for application development and debugging. I will also show you how to achieve this.
</blockquote>
<p>
They walk you through the creation of a <a href="http://www.phpriot.com/articles/zend-log/2">simple logger</a> and putting it to use by recording just the events you want (via error levels). There's also an extra section on integrating it with the Firebug/FirePHP extensions for Firefox and push your messages directly to the browser.
</p>]]></description>
      <pubDate>Mon, 13 Apr 2009 08:46:13 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Raphael Stolt's Blog: Turning a Zend_Log log file into a RSS feed]]></title>
      <guid>http://www.phpdeveloper.org/news/8123</guid>
      <link>http://www.phpdeveloper.org/news/8123</link>
      <description><![CDATA[<p>
In a <a href="http://raphaelstolt.blogspot.com/2007/06/turning-zendlog-log-file-into-rss-feed.html">new post</a> to his blog today, <i>Raphael Stolt</i> shows how to take the output from the Zend_Log component of the Zend Framework and, with a bit of custom coding, make it output an RSS feed.
</p>
<blockquote>
Whilst touring the web I found an interesting <a href="http://www.simonecarletti.com/code/apachelog2feed/">project</a> for turning Apache Web Server log files into RSS feeds. This approach can be adjusted to monitor the maintenance needs of a web application deployed on an assumed productive system. Therefor a XML capable <a href="http://framework.zend.com/manual/en/zend.log.html">Zend_Log</a> instance will be set up and the resulting log file will be transformed into a RSS feed via a custom <a href="http://framework.zend.com/manual/en/zend.controller.actionhelpers.html">Action Helper</a> wrapping a XSLT transfomation.
</blockquote>
<p>
He sets up the XML logger first, using the Zend_Log, Zend_Log_Writer_Stream and Zend_Log_Formatter_Xml to create the XML output from the logging. Then, with the help of the custom helper - Recordshelf_Controller_Action_Helper_Xslt - he reformats the XML output into an RSS feed ready for public consumption. (There's even <A href="http://farm2.static.flickr.com/1245/626281306_4d13890519_o.png">a screenshot</a> of what it might look like in a feed reader).
</p>]]></description>
      <pubDate>Tue, 26 Jun 2007 08:33:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Northclick Blog: Getting the PHP fatal errors]]></title>
      <guid>http://www.phpdeveloper.org/news/7843</guid>
      <link>http://www.phpdeveloper.org/news/7843</link>
      <description><![CDATA[<p>
From the Nothclick dev blog, there's <a href="http://blog.northclick.de/archives/17">this new post</a> from <i> Soenke Ruempler</i> that talks about working with error messages in PHP, specifically with fatal errors.
</p>
<blockquote>
One big issue of the PHP error handling is that there's no built-in way to catch fatal errors with an user-defined error handler. So I thought a little bit about it and maybe you have better approaches or solutions...
</blockquote>
<p>
With the goal of emailing the developers when such an error is thrown, he comes up with three different "storage methods" - using syslog, sapi, or a common logfile - and two different methods for watching them - file watching and syslogger. He works through these two options, trying to figure out which out be the simplest to implement.
</p>
<p>
He comes to the conclusion, though, that he might just be better off with one of the packages already out there to do something similar. Of the four he found, <a href="http://sourceforge.net/projects/swatch/">Swatch</a> seemed to fit the best. He includes configuration and setup info to illustrate.
</p>]]></description>
      <pubDate>Tue, 15 May 2007 07:49:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Expanding an Error Logger with the Chain of Responsibility Pattern]]></title>
      <guid>http://www.phpdeveloper.org/news/6692</guid>
      <link>http://www.phpdeveloper.org/news/6692</link>
      <description><![CDATA[<p>
Finishing off their look at the "chain of responsibility", DevShed has posted <a href="http://www.devshed.com/c/a/PHP/Expanding-an-Error-Logger-with-the-Chain-of-Responsibility-Pattern/">part three</a> of the series - expanding on the code that they produced in the past, they add more functionality to their error logger.
</p>
<blockquote>
Now, paying attention to the topics that will be covered in this tutorial, what you'll learn here will consist essentially of applying the chain of responsibility schema to expand the capacity of the error logging system that was developed  previously.
</blockquote>
<p>
They take a look back at what they produced in the previous tutorial (the simple error logger) and show how to <a href="http://www.devshed.com/c/a/PHP/Expanding-an-Error-Logger-with-the-Chain-of-Responsibility-Pattern/">expand on it</a> by adding functionality to log errors to a file. The finish it off by showing how to implement it all in a simple script.
</p>]]></description>
      <pubDate>Mon, 13 Nov 2006 10:57:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Building an Error Logger with the Chain of Responsibility Pattern in PHP 5]]></title>
      <guid>http://www.phpdeveloper.org/news/6649</guid>
      <link>http://www.phpdeveloper.org/news/6649</link>
      <description><![CDATA[<p>
With the next link in their look at the "chain of responsibility" pattern, DevShed has posted <a href="http://www.devshed.com/c/a/PHP/Building-an-Error-Logger-with-the-Chain-of-Responsibility-Pattern-in-PHP-5/">this new part</a> in the series - adding an error logger to the mix.
</p>
<blockquote>
At the end of this article you should be equipped with more robust knowledge of how to create a responsibility chain between PHP objects that perform truly useful tasks, like logging errors to specific components of a Web application.
</blockquote>
<p>
They work from the code built up in the previous installations and <a href="http://www.devshed.com/c/a/PHP/Building-an-Error-Logger-with-the-Chain-of-Responsibility-Pattern-in-PHP-5/">show how</a> to add the foundations of the error logger to the class before moving on to the more advanced bits. They then show how to use it to log some basic errors and, using only a bit more skill, logging some email-related errors.
</p>]]></description>
      <pubDate>Mon, 06 Nov 2006 10:32:00 -0600</pubDate>
    </item>
  </channel>
</rss>

