<?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 11:56:22 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Inviqa techPortal: New Relic for PHP: Web Application Performance Monitoring]]></title>
      <guid>http://www.phpdeveloper.org/news/19318</guid>
      <link>http://www.phpdeveloper.org/news/19318</link>
      <description><![CDATA[<p>
On the Inviqa techPortal today there's a new post talking about the New Relic monitoring service and what it has to <a href="http://techportal.inviqa.com/2013/03/14/new-relic-for-php-web-application-performance-monitoring/">offer PHP developers and their applications</a> to help them manage things like performance and resources.
</p>
<blockquote>
The performance of a web application plays a critical role in how an application is perceived by its users. It is important to measure it, identify the causes if it changes and react swiftly to any unexpected changes. This article describes an industry leading tool, New Relic, and how it can be used to monitor and improve your site performance. [...] New Relic is a real-time application monitoring service, providing various metrics about the performance of your production site, covering everything from application database queries through to the time it takes for the end-user to view a page. 
</blockquote>
<p>
They walk you through a "getting started" with the tool and how to get it running on your server - for PHP this means installing an "agent" extension and a local daemon for it to feed information back to. They then get into some of the data New Relic provides including application performance details, browser information, throughput and an <a href="https://en.wikipedia.org/wiki/Apdex">Apdex</a> score.
</p>]]></description>
      <pubDate>Fri, 15 Mar 2013 10:10:56 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Gonzalo Ayuso's Blog: Real time monitoring PHP applications with websockets and node.js]]></title>
      <guid>http://www.phpdeveloper.org/news/16313</guid>
      <link>http://www.phpdeveloper.org/news/16313</link>
      <description><![CDATA[<p>
<i>Gonzalo Ayuso</i> has a new post to his blog today looking at a method you can use for <a href="http://gonzalo123.wordpress.com/2011/05/09/real-time-monitoring-php-applications-with-websockets-and-node-js/">real-time monitoring of your PHP applications</a> with a combination of websockets and Node.js. The trick is to handle the PHP errors and send them over to a Node.js server for processing.
</p>
<blockquote>
The inspection of the error logs is a common way to detect errors and bugs. We also can show errors on-screen within our developement server, or we even can use great tools like firePHP to show our PHP errors and warnings inside our firebug console. That's cool, but we only can see our session errors/warnings. If we want to see another's errors we need to inspect the error log. tail -f is our friend, but we need to surf against all the warnings of all sessions to see our desired ones. Because of that I want to build a tool to monitor my PHP applications in real-time.
</blockquote>
<p>
The service will work similar to a chat server, sending messages one at a time to the remote server via a web client (HTML5-based) and some backend PHP. He includes all the code you'll need to create the HTTP and web socket server as well as the web client (with some Javascript) and some example server-side PHP. It throws an exception and catches it to send to the waiting Node.js server. A <a href="http://www.youtube.com/watch?v=KnBRcU_tBkk">screencast</a> is also included showing the full process. You can get the complete code for this example in <a href="https://github.com/gonzalo123/RealTimeMonitor">this repository</a> on <i>Gonzalo</i>'s github account.
</p>]]></description>
      <pubDate>Mon, 09 May 2011 11:02:28 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Alison's Blog: Upcoming WordPress Security Book]]></title>
      <guid>http://www.phpdeveloper.org/news/15396</guid>
      <link>http://www.phpdeveloper.org/news/15396</link>
      <description><![CDATA[<p>
WordPress developers (or just site admins) will be happy to know that <a href="http://www.snipe.net/2010/11/wordpress-security-book/">a new book</a> is in the works (by <a href="http://www.snipe.net/about/">Alison</a>) about securing, monitoring and generally "unhacking" WordPress.
</p>
<blockquote>
I'm at the very early stages of writing a book about how to secure, monitor and un-hack WordPress. This book will be the culmination of everything I know about keeping WordPress hardened against attacks, how to keep an eye on your install so that you're the first to know if something has happened, and how to handle the situation if you bought the book too late and got pwned anyway.
</blockquote>
<p>
The book will be released as an e-book and she explains some of the specifics of that in <a href="http://www.snipe.net/2010/11/wordpress-security-book/">the post</a> - cost, pre-ordering, why an e-book and her qualifications to write and release the book as a good thing to follow.
</p>]]></description>
      <pubDate>Mon, 08 Nov 2010 10:11:21 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Oracle Technology Network: PHP Web Auditing, Authorization and Monitoring with Oracle Database]]></title>
      <guid>http://www.phpdeveloper.org/news/15120</guid>
      <link>http://www.phpdeveloper.org/news/15120</link>
      <description><![CDATA[<p>
On the Oracle Technology Network today there's <a href="http://www.oracle.com/technetwork/articles/dsl/php-web-auditing-171451.html">a new article</a> from <i>Chris Jones</i> about using the client identifier in the OCI8 PHP-to-Oracle connections to help with auditing, profiling and monitoring your Oracle database usage.
</p>
<blockquote>
This "client identifier" can be used by Oracle Database to distinguish between individual web application users who all connect to the database using one common set of database credentials. For example, every page in a web site might physically connect to the database as the same database user PHPUSER. If two different people 'Chris' and 'Alison' are using the site, these two user names can be set as their respective client identifiers and be passed into the database.
</blockquote>
<p>
He shows how to set these client identifiers via the <a href="http://www.php.net/manual/en/function.oci-set-client-identifier.php">oci_set_client_identifier</a> function (and how you could use it in older versions of the OCI8 driver too). He provides a sample application to help you get a good overall picture complete with SQL to load the database and a basic login page to submit and pull that data back out.
</p>
<p>
He moves over to the database side where he talks about enabling auditing, pulling out the logged application ID and how to use this identifier to restrict access via a Virtual Private Database on the Oracle side.
</p>]]></description>
      <pubDate>Mon, 13 Sep 2010 14:10:25 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Kevin Schroeder's Blog: How to (properly) evaluate Zend Server - Introduction]]></title>
      <guid>http://www.phpdeveloper.org/news/15058</guid>
      <link>http://www.phpdeveloper.org/news/15058</link>
      <description><![CDATA[<p>
<i>Kevin Schroeder</i> has <a href="http://www.eschrade.com/page/properly-evaluate-zend-server-part-4c7d75fb">a new post to his blog</a> today on how to correctly evaluate the <a href="http://www.zend.com/en/products/server/">Zend Server</a> product from <a href="http://zend.com">Zend</a> (disclaimer: he is a Zend employee).
</p>
<blockquote>
As you all probably know, Zend has salespeople.  Those sales people have sales engineers who show how to use our products.  However, I personally hate being on the phone for a canned presentation when all I really want to do is tinker.  So, in an effort to produce something of benefit today I decided to start a series of blog posts on how to evaluate Zend Server if you are a tinkerer, like me.
</blockquote>
<p>
He gives a list of some of the features that the product comes with, but will only really focus on three of them in his series - application monitoring, code tracing and the Zend Server job queue (because he thinks they're the best of the crop). This post is just an introduction to the product and an overview of what it offers - expect more detail to come in future posts.
</p>]]></description>
      <pubDate>Wed, 01 Sep 2010 10:36:37 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: A Basic Monitoring Engine in PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/6275</guid>
      <link>http://www.phpdeveloper.org/news/6275</link>
      <description><![CDATA[<p>
Continuing on in their series of working with stand alone PHP scripts, DevShed has posted <a href="http://www.devshed.com/c/a/PHP/A-Basic-Monitoring-Engine-in-PHP/">this third and last part</a> looking at the creation of a basic script you can use to monitor your server (an excerpt from <a href="http://www.amazon.com/Advanced-PHP-Programming-George-Schlossnagle/dp/0672325616/">Advances PHP Programming</a> by <i>George Schlossnagle</i>).
</p>
<blockquote>
Last week, we continued our discussion of PHP standalone scripts with child processes and more. This week, we conclude our discussion and bring together what you've learned.
</blockquote>
<p>
They <a href="http://www.devshed.com/c/a/PHP/A-Basic-Monitoring-Engine-in-PHP/">start</a> with the creation of a very basic daemon, including permission restrictions. They then modify this heavily to support the monitoring of processes through various parameters like frequency, status_time, and a description of the service. They then create the full example script and show the usage by checking to see if a URL passed in can be opened.
</p>
<p>
They also include, as a bonus, another more useful script that will email someone when the specified service goes down (still a HTTP check, though).
</p>]]></description>
      <pubDate>Thu, 14 Sep 2006 13:44:19 -0500</pubDate>
    </item>
  </channel>
</rss>
