This page describes the PHP Agent, the application monitoring agent for web and CLI PHP applications in AppDynamics.  

About the PHP Agent

The PHP agent component discovers and monitors business transactions, application services, and backends in your PHP application. It injects AppDynamics instrumentation into the application at runtime.

The AppDynamics agent proxy is a Java process that handles the communication between the PHP agent and the Controller. The proxy reports performance metrics to the Controller, where the data is stored, baselined, and analyzed. You can access this performance data interactively using the Controller console or programmatically using the AppDynamics REST API.

The proxy component starts automatically when you start the PHP Agent. For some applications, such as for PHP CLI applications, you need to start the proxy separately from the agent. You need to provide for proxy startup either manually or in scripts.

Deployment Overview

The proxy is the component that connects the agent and the controller. If you can ping the Controller but the agent is not connecting, it is possible that the proxy did not start or that the proxy is not configured correctly. See Resolve PHP Agent Installation Issues and Dynamic Language Agent Proxy.

When the connection is successfully established, log in to the Controller to monitor your application. See AppDynamics Essentials to get started. 

Single Application Per Web Server Instance

This is the default setup assumed by the installer—multiple servers, each with a single application.

Multiple Server Installer Setup

Each application has its own agent and its own agent and proxy. There is a single tier and a single node for each application. 

Single Application Per Web Server Instance with Multi-Tenant Proxy

This scenario also assumes multiple servers, each with a single application.

Multi-Tenant Proxy

In this case, each application has its own agent component but all the agents share a single proxy. There is a single tier and a single node for each application. Sharing a proxy can save some overhead in some situations. See Use a Shared Proxy for PHP Agents.

Multiple Applications on a Single Server

This scenario assumes multiple applications running in a single server

Multiple Applications on a Single Server

There is one agent and one proxy supporting multiple applications. By default, the proxy automatically starts when the server starts. The applications can be configured with different tiers and nodes. See Multiple PHP Apps on a Single Server for information on how to configure the Apache vhosts or FPM pool config blocks.

Getting Started with the Download Wizard

If you have never installed the agent, the best way to start is with the Getting Started Wizard in the Controller. The Getting Started Wizard walks you through configuration steps and helps you download the agent. To access the wizard, in the Home page of the Controller, click Getting Started and then PHP.

The wizard provides the minimum information that the agent needs to communicate with the AppDynamics Controller: Controller host and port, optionally SSL, application name and tier name.

Node Naming in a PHP Environment

A PHP runtime instance maps to a node. Your naming convention may depend on your exact environment. Use a name that clearly identifies the Web service that corresponds to the node. Some options are:

  • hostName-appName-nodeName
  • hostName-tierName-nodeName
  • appName-nodeName
  • tierName-nodeName
  • IP address
  • fully qualified domain name