Real Time Drupal Profiling

Visualize and map Drupal dependencies automatically.

It’s important to tune your code for any language. It’s even more important for interpreted languages like PHP (the foundation for many popular applications), which are a bit slower than compiled languages. Even in hybrid environments, real time profiling PHP nodes is still an important part of managing overall application performance. As a result, PHP profiling and tuning are constant subjects of discussion for PHP developers – where do you start? Which profilers are best? How do you measure the results of your efforts? 

The problem is, without the proper visibility, it’s very difficult to know where to begin to get the most bang for your buck. Many developers spend hours or weeks on a performance optimization project only to find that it hasn’t made the slightest difference in how the application performs. 

To make performance optimization effective and efficient, it’s important to have the right tools for real time profiling in place. This means you’ll need a PHP profiler that’s capable of monitoring your production environment, so you can find out what impact your optimization efforts have really had on your end users. 

AppDynamics for PHP is an easy-to-use PHP monitoring solution designed for production environments. With AppDynamics, you can easily do real time profiling of your PHP code, identify bottlenecks, and drill down to the class and method level to identify root cause.

Easy to install and use

PHP tuning has never been easier. AppDynamics automatically discovers and maps your PHP application and begins baselining performance for each Business Transaction. When performance starts to degrade, you can easily find the bottleneck in your application and begin troubleshooting.

Drill down to code-level detail

AppDynamics has the most complete call stack traces in any PHP performance tool. With AppDynamics you can quickly identify a poor-performing transaction, drill down into the call stack trace, and identify the line of code responsible for the latency. 

No more alert storms

Many monitoring tools rely on static, global thresholds to send alerts, which results in alert storms (when set too low) or missed problems (when set too high). AppDynamics allows you to set alerts based on Business Transaction performance, so you'll only receive alerts when something's gone wrong. 

More About PHP Monitoring

Get Started

Sign up for a free trial of AppDynamics for PHP.

Key Features of PHP Monitoring

  • Business Transactions: Automatic detection, response time, calls per minute, slow, very slow, stalls
  • Code-level Diagnostics: Diagnostic sessions showing complete code execution, policy-based collection available
  • SQL Statement Visibility: PDO statements & prep statements, remove sensitive data
  • Errors: Transaction errors, backend errors
  • Real User Monitoring: Browser diagnostics correlated with code-level diagnostics
  • Change Detection: Record application change events
  • Application Flow Map: Visualize all dependencies of your application
  • Real-Time Analytics: Automatic baselining and scoring of application and transaction performance

Supported Environments for PHP Monitoring

PHP Versions

  • 5.3, 5.4

Web Servers

  • Apache 2.2 in prefork mode 
  • Apache 2.2 in worker MPM running FastCGI using php-fpm 
  • nginx 1.2.x running FastCGI using php-fpm

Operating Systems

  • RHEL/CentOS 5.8+
  • Ubuntu/Debian 12+

Architecture

  • x86_64bit

Frameworks

  • Drupal 7 using Drupal entry point type 
  • WordPress 3.4 & 3.5 using Wordpress entry point type 
  • Zend 1 & 2 using PHP MVC entry point type 
  • Symfony 1 & 2 using PHP MVC entry point type 
  • Magento 1.5, 1.6 & 1.7 using PHP MVC entry point type
  • HTTP using PHP Web entry point type 

Transaction Naming

  • Drupal: page callback name
  • Wordpress: template name
  • PHP MVC: module:controller:action
  • PHP Web: URL

HTTP Exit Points

  • fopen
  • curl/curl-multi
  • drupal_http_request()
  • Zend_HTTP_Client::request()

DB Exit Points

  • PDO
  • mysql old native driver
  • mysqli

Cache Exit Points

  • memcached

Opcode Cache Compatibiity

  • Alternative PHP Cache (APC)