Introduction to New Relic for PHP

Our PHP agent monitors your application to help you identify and solve performance issues. You can also extend the agent's performance monitoring to collect and analyze business data to help you improve the customer experience and make data-driven business decisions.

Before you install the PHP agent, ensure your system meets the system requirements. The PHP agent supports many of the most common PHP frameworks, databases, and libraries. You can also use the agent in a Google App Engine (GAE) flexible environment.

Monitor app performance

PHP - APM Summary
one.newrelic.com > APM > (select an app) > Summary: After installing the PHP agent, view a summary of your app's performance.

View the big picture of your app

Find errors and problems quickly

Drill down into performance details

Analyze business data

Use the PHP agent to organize, query, and visualize your data to answer key questions about application performance and customer experience.

Architecture

The PHP agent has two binaries that work together to forward data to New Relic:

  • The agent handles automatic and API instrumentation of your PHP code.
  • The daemon acts as a proxy between the agent and the New Relic platform.

You can connect up to 500 applications/agents to one daemon. The daemon imposes sampling when the harvest cycle limits are reached, so consider this when deciding how many applications/agents to connect to a single daemon.

The number of applications/agents per daemon may be lower when running in separate Docker containers, depending on the capacity of the connection between containers.

This diagram shows the flow of data from the PHP agent to New Relic.
The flow of data from your PHP applications to New Relic.

The workflow between your application and New Relic must occur in this order:

  1. The agent establishes a socket connection with the daemon by sending the first payload of instrumentation data.
  2. The daemon establishes an HTTPS link with the New Relic platform. The daemon must be invoked before your instrumented application is invoked. This is called agent mode and is the default.

To avoid losing reported data, make sure your instrumented application doesn't send transactions before both connections are established.

Install the agent

If you are installing the agent on a shared hosting service, ensure you have root permissions to install the agent or contact your hosting provider for technical assistance.

To install the agent, sign up for New Relic first. Once logged in, use our launcher or see the instructions for specific installations.



For standard installations, see:

For other types of PHP installations and advanced installation topics, see:

Configure the agent

The agent includes a variety of configuration options to further customize and fine-tune your installation.

The most important part of agent configuration is to give your app a descriptive name. New Relic uses this app name to aggregate metrics when you have multiple apps or hosts.

After changing any agent configuration options, restart your web server.

Extend agent instrumentation

After installing the agent, go further and extend the agent's instrumentation:

  • Page load timing: Integrate the PHP agent with browser monitoring to gain visibility into end-user activity.
  • Custom instrumentation: Instrument transactions not captured as part of our framework instrumentation.
  • Agent API: Use the agent API to customize the agent's behavior. For example, you can collect custom metrics, flag an error, or ignore a particular transaction entirely.
  • Agent attributes: Customize the attributes attached to transactions. Customizing attributes allows you to avoid sending sensitive attributes, or to collect additional attributes for deeper visibility into your transactions.

Troubleshoot your installation

If you encounter issues with the PHP agent, see our full list of troubleshooting documentation. Common installation issues include:

For more help

If you need more help, check out these support and learning resources: