Anatomy of a Modern PHP
Application Architecture
SET HEALTH RULES
Alert & Respond > Health Rules
WEB SERVER
CONFIGURE
End User Experience > Web > Pages &
AJAX Requests
Double click on selected Page
View Summary Timeline to locate bottleneck
CONFIGURE & VIEW
Navigate to AppDynamics Exchange
Search for your server
Download and Install extension
Navigate back to AppDynamics Controller
Analyze > Metric Browser
Find your extension
VIEW
WEB SERVER
IOS / ANDROID
End User Experience > Web > Analyze
Focus on location, browser type, device type,
and other combinations to analyze performance.
CACHE
Navigate to AppDynamics Exchange
Search for your server
Download and Install extension
Navigate back to AppDynamics Controller
Analyze > Metric Browser
Find your extension
VIEW
Servers > remote services
Double-click remote service
EXTERNAL WEBSERVICES
CACHE
VIEW
Troubleshoot > Slow Response Times >
Slowest DB & Remote Service Calls
Select HTTP
Navigate to Application Flowmap
View latency to your cache server
TRANSACTIONS
CONFIGURE BUSINESS TRANSACTIONS
Navigate to Business Transactions
Right-click Transaction
Choose configuration options to organize
transactions
ERRORS
COLLECTING USER DATA
VIEW RUNTIME ERRORS
Troubleshoot > Errors > Error Transactions
Double-click Transaction Snapshot
Drill Down > Error Details
Configure > Instrumentation > Transaction
Detection > Select PHP Tier
Scroll down to Custom Rules
Create rules to group, match and exclude your
transactions
Troubleshoot > Errors > Exceptions
Double-click Exception
Double-click Transaction Snapshot
Drill Down > Error Details
ANALYSIS
CONFIGURE HTTP DATA
VIEW APPDYNAMICS MACHINE AGENT
VIEW HTTP DATA
VIEW HARDWARE
Configure > Instrumentation > Diagnostic Data
Collectors
Scroll down to HTTP Request Data Collectors
VIEW UNCAUGHT EXCEPTIONS
CONFIGURE TRANSACTION DISCOVERY
VIEW
Application Dashboard > Transaction Snapshots
> Show Filters
Select search criteria > Search
Double click Transaction Snapshot
Start Drill Down > HTTP Params
EXTERNAL WEBSERVICES
CONFIGURE & VIEW
END USER EXPERIENCE
WEB
Download & Install Machine Agent
Navigate to Servers > App Servers >
[Your PHP Tier] > [Your PHP Node]
Select Hardware
Application Dashboard > Transaction Snapshots >
Show Filters
Select search criteria > Search
Double click Transaction Snapshot
Start Drill Down > Hardware
CONFIGURE ERROR REPORTING
Configure > Instrumentation > Transaction
Detection >
Select Use Custom Configuration
Enable PHP MVC, Drupal or Wordpress
Configure > Instrumentation > Error Detection >
PHP - Error Detection
Configure Runtime Error Threshold (Notice,
Warning, Fatal Error)
Configure Ignored Exceptions or Logged
Messages
SLOW CODE EXECUTION
CONFIGURE TRANSACTION API
Use the custom API functions to manually define
the beginning and ending of a transaction from
within your code
Navigate to Business Transactions to view
Hint: This is useful in cases where you have a
transaction executing jobs in an infinite loop and
want to register each job as a transaction.
CONFIGURE CLASS/METHOD DATA
Configure > Instrumentation > Diagnostic Data
Collectors
Scroll down to Method Invocation Data
Collectors
PHP APPLICATION
Application Dashboard > Transaction
Snapshots > Show Filters
Select search criteria > Search
Double click Transaction Snapshot
Start Drill Down > Call Graph OR Hot Spots
Configure > Instrumentation > Transaction
Detection > Select PHP Tier
Scroll down to Entry Points
Enable PHP CLI
CONFIGURE EVENTS
Add APPLICATION_DEPLOYMENT or CUSTOM
as an event type to add events using the
AppDynamics REST API
VIEW EVENTS
INFORMATION POINTS
Analyze > Information Points
Click 'New', click 'PHP', enter JSON
configuration, click 'Create Information Point'
Double-click [your information point] to view
VIEW PHP CLI
Navigate to Business Transactions
View PHP CLI Transactions named after the
executed PHP script
VIEW
Navigate to Application Dashboard > Events
HINT: Add Custom events into all your
automated scripts, including deployments,
maintenance and rollbacks to keep track of
differences in performance between key changes
to your application and environment.
VIEW
Navigate to Servers > Databases
Double-click your DB
Select your PHP Tier
View slow queries
Navigate to your Application Dashboard
> Flowmap
Find Queue Server
View latency to your queue server
DATABASE
DATABASE
VIEW
VIEW
Navigate to Application Dashboard > Flowmap
Right-click on Database
Select View in Database Monitoring
VIEW
Application Dashboards > Transaction
Snapshots
Find transactions that speak to your Queue
server
Double click > Start Drill Down > Call Graph
Find method call that sends job, click to
correlate to downstream worker server for
associated call graph
DATABASE
INFO
In a service-oriented environment the
performance indicators of the distributed nature
of the transaction is an integral aspect of
characterizing transaction performance.
AppDynamics applies distributed transaction
tracing to for all business transactions as well as
for the entire application. Using a tag, trace, and
learn approach, AppDynamics traces the
transaction context across all tiers, including
JVMs, CLRs, PHP servers, and calls to HTTP, SOAP,
databases, third party web services, etc.
INFO
When a PHP application communicates with an
external component that is not being monitored
as part of the same business application, such as
a database or a message queue, you can monitor
the performance data for the communication.
WORKER SERVERS
INTERNAL WEBSERVICES
DISTRIBUTED TRANSACTIONS
AppDynamics displays distributed communication
performance in the business application and
business transaction flow maps.
WORKER SERVERS
INTERNAL WEBSERVICES
QUEUE SERVER
Application Dashboard > Transaction Snapshots
> Show Filters
Select search criteria > Search
Double click Transaction Snapshot
Start Drill Down > SQL Calls
QUEUE SERVER
HINT: Be sure to automatically add deployment
events using our REST API (see Events).
BUSINESS INTELLIGENCE
PHP CLI
CONFIGURE PHP CLI
Analyze > Compare Releases
Select time ranges to compare
VIEW CLASS/METHOD DATA
Application Dashboard > Transaction Snapshots
> Show Filters
Select search criteria > Search
Double click Transaction Snapshot
Start Drill Down > User Data
VIEW
COMPARE RELEASES
PHP
PHP
CONFIGURE FRAMEWORK SUPPORT