Stackify is now BMC. Read theBlog

Stackify Retrace Releases Support for PHP

By: mwatson
  |  October 1, 2018
Stackify Retrace Releases Support for PHP

Stackify was founded with the goal of giving developers the all the tools they need to troubleshoot and monitor their applications. We are very excited to announce that we now have support for PHP monitoring to go along with support for .NET and Java applications.

What is Retrace?

Retrace is an application performance management (APM) solution that combines code-level performance pricing, centralized logging, error tracking, and more. Stackify Retrace is used by thousands of developers all over the world. Retrace can be used for proactively improving the performance of your applications as well as monitoring your PHP applications.

Retrace PHP Monitoring

Learn more about Retrace

How does Retrace work with PHP?

Retrace works by installing our extension within your PHP application. Our profiler for PHP is written in high-performance C code and tracks the usage and performance of key methods in your code. Retrace is designed to have very low overhead and is safe to run on production applications. Our APM solution is considered to be “agent-based” and requires our agent to be installed on your server or container host.

Retrace is supported with any PHP web application running on Linux. Docker and Kubernetes are fully supported. Check out our documentation to learn more.

What is supported in v1.0?

Retrace for PHP v1.0 includes support for the most common frameworks and versions of PHP on Linux.

  • PHP: v5.4-v5.6, v7.0-v7.2
  • Web servers: Apache, NGINX
  • Common MVC frameworks: Laravel, CodeIgniter, Zend, Symfony, Yii, CakePHP, and others
  • Containers: Docker & Kubernetes

Automatic instrumentation is also supported for many common frameworks like SQL, curl, Redis, MongoDB, and many more. Please see our documentation for the full list of supported frameworks.

Retrace will also automatically collect many exceptions that may be thrown in your PHP applications. These exceptions will automatically be sent to Retrace’s error tracking dashboard. Please note that support for Monolog and some other logging scenarios for logs and exceptions are also supported. Retrace’s full functionality for log management and error tracking work for PHP.

What does Retrace do?

Retrace collects performance data from your applications and makes it easy to figure out how to improve the performance of your web applications and troubleshoot bugs. Retrace is also very powerful for PHP performance monitoring.

Automatic code profiling & tracing

Retrace is designed to automatically instrument key methods in your PHP code. This includes standard PHP frameworks and dependencies. We all know that fixing and finding bugs in production is complex and difficult. Retrace offers lightweight application profiling that is safe for production usage and can help detect errors and performance problems at the code level.

Below is an example of a trace collected by Retrace for PHP:

an example of a trace collected by Retrace for PHP

Application dependency performance

Today’s applications rely on many different dependencies and frameworks. Utilizing Microsoft Azure, Google Cloud, or Amazon Web Services makes it very easy to use a wide array of Platform as a Service offerings.

They make it easy to use various services including caching, queueing, SQL, NoSQL, and much more. All of these dependencies add a ton of value for your PHP applications. They also introduce potential points of failure within your PHP applications. It is important to be able to monitor and understand how all of these services impact the performance of your applications.

Below is an example of an application that is having some performance spikes from Redis. Retrace makes it so you can quickly see the big spikes and identify the root cause as Redis.

Below is an example of an application that is having some performance spikes from Redis. Retrace makes it so you can quickly see the big spikes and identify the root cause as Redis.

Retrace also tracks the performance of every unique MVC action or page within your PHP application.

Retrace also tracks the performance of every unique MVC action or page within your PHP application.

Monitoring SQL performance

Most PHP web applications rely heavily on a centralized SQL database. There are a lot of scenarios where database problems cause major performance problems within your PHP applications. Detailed SQL monitoring is critical to PHP performance monitoring.

Retrace automatically tracks all of the SQL queries being executed by your PHP web applications. It uniquely identifies each query and removes dynamic data used in the queries for security.

Retrace automatically tracks all of the SQL queries being executed by your PHP web applications. It uniquely identifies each query and removes dynamic data used in the queries for security.

Monitoring PHP exceptions

Application errors are typically the first thing that developers look for when things are not working correctly. PHP exceptions can happen for a wide array of issues and can definitely cause performance problems.

Retrace provides robust error tracking and monitoring for PHP. It can send you emails when a new PHP exception is found or when error rates are high. We always suggest monitoring the error rates for your applications. They provide a good safety check for detecting weird application problems.

Retrace automatically de-duplicates your PHP exceptions and makes it easy to see what unique exceptions are occurring, how long they have been happening, and much more.

Retrace automatically de-duplicates your PHP exceptions and makes it easy to see what unique exceptions are occurring, how long they have been happening, and much more.

View all your logs in one place

Regardless of which PHP logging framework you are using, one of the benefits is being able to send all of your PHP logs to a centralized log management solution like Retrace.

With Retrace you can view and search all of your PHP logs across every environment, application, and server. This makes it easy to quickly troubleshoot problems with your PHP applications.

Below is the sample screen capture of Retrace’s log viewer:

sample screen capture of Retrace’s log viewer

What is coming next for PHP?

Over the next few months, we plan to continually make improvements to our support for PHP. This includes adding automatic instrumentation support for additional frameworks, as well as special functionality for things like WordPress.

At the time of the v1.0 release, instrumenting non-web applications is not supported for PHP. We also do not support instrumenting your own custom methods that are not automatically instrumented. As part of our continued enhancements, we plan to add support for non-web applications and custom method instrumentation. This is currently estimated as Q1 of 2019.

In the future, we also plan to test and support additional deployment scenarios of PaaS providers.

Summary

We are very excited to be launching support for PHP. We have supported .NET and Java for a long time and are excited to be broadening our support for various programming languages. We are actively working on support for additional languages!

Sign up for a free trial today to get Retrace for PHP a try!

Suggested reading:

Improve Your Code with Retrace APM

Stackify's APM tools are used by thousands of .NET, Java, PHP, Node.js, Python, & Ruby developers all over the world.
Explore Retrace's product features to learn more.

Learn More

Want to contribute to the Stackify blog?

If you would like to be a guest contributor to the Stackify blog please reach out to [email protected]